美文网首页
ios-委托代理详细步骤,手把手教,学不会你砍我!

ios-委托代理详细步骤,手把手教,学不会你砍我!

作者: 俊月 | 来源:发表于2015-12-16 09:37 被阅读55次

    让第二个页面传值到第一个界面。首先现在第二个页面头文件里
    #import <UIKit/UIKit.h>下与@end之间写如下指令:

    //协议
    @protocol loveDelegate<NSObject>
    //协议的方法
    -(void)loveDelegate:(NSString *)str;
    @end
    @interface secondViewController : UIViewController
    //实体变量,成员属性
    //id是任意数据类型
    @property(nonatomic,strong)id<loveDelegate>delegate;
    
    

    然后把被传值文件的实现文件里引入第二页面(#import"传值的页面名.h")
    然后在该页面中的interface这一行的括号后加上<loveDelegate>来调用这个方法。如下
    @interface firstViewController ()<loveDelegate>
    在viewdidload里实例化一个button。button的属性请看以下例子中的注释

    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view from its nib.
    //实例化一个button,它的结构大小是122,300,100,42
        UIButton * btn=[[UIButton alloc]initWithFrame:CGRectMake(122,300,100,42)];
    //设置这个button的标题是"进入",样式为一般
        [btn setTitle:@"进入" forState:UIControlStateNormal];
    //设置标题字体的颜色为白色,样式为一般
        [btn setTitleColor:[UIColor whiteColor ]forState:UIControlStateNormal];
    //设置button的背景颜色为橙色
        btn.backgroundColor=[UIColor orangeColor];
    //为这个button添加点击目标为自己,然后点击所执行的命令(也叫点击事件)为"(clickPop)"(还需要对该点击事件所执行的方法进行编写)。
        [btn addTarget:self action:@selector(clickPop) forControlEvents:UIControlEventTouchUpInside];
        把这个button加到自身的view上
        [self.view addSubview:btn];
    }
    

    对点击事件的方法进行编写

    -(void)clickPop{
    实例化secondviewcontroller为vc
        secondViewController *vc= [[secondViewController alloc]init];
    //vc使用delegate方法为本身
        vc.delegate = self;
    //跳转到vc页面
        [self.navigationController pushViewController:vc animated:YES];
        
    }
    

    然后调用loveDelegate里的方法

    -(void)loveDelegate:(NSString *)str{
        NSLog(@"love" );
    }
    

    最后在第二个页面的实现文件里写入

    -(void)viewWillDisappear:(BOOL)animated
       {
         [  self.delegate loveDelegate:@"dragon"];
           
       }
    

    相关文章

      网友评论

          本文标题:ios-委托代理详细步骤,手把手教,学不会你砍我!

          本文链接:https://www.haomeiwen.com/subject/zpiuhttx.html