首页 > 其他 > 详细

UI_页面传值问题

时间:2015-07-08 22:35:44      阅读:303      评论:0      收藏:0      [点我收藏+]

属性传值

    // 属性传值:最常用的一种传值方式
    /**
     *  操作过程 
     *  1、在第二个控制器的.h文件里面书写属性
     *  2、就在第一个页面创建第二个页面控制器方法里面,进行赋值操作
     *  3、适用性(局限性):仅仅适用于从第一个页面传到第二个页面(从前往后传)
     */

*1、在第二个控制器的.h文件里面书写属性

//  设置属性用于传值
@property (nonatomic, copy)NSString *receiveStr;

*2、就在第一个页面创建第二个页面控制器方法里面,进行赋值操作

    // 赋值, 属性写在了第二个控制器里面
    // 在 SecondViewController.m 里面接收,因为切换的是控制器
    secondVC.receiveStr = self.rootView.firstText.text;
// 接收字符串
    self.rootView.label.text = self.receiveStr;

代理传值

    // 代理传值:
    /**
     *  操作过程
     *  1、在第二级控制器的.h文件,书写非正式协议(方法必须带参数)
     *  2、在第二级控制器的.h文件,写属性
     *  3、在第二级控制器的.m文件,利用代理属性,去调用协议里面的方法(同时把参数传出去)
     *
     *  4、在第一级控制器里面遵守协议
     *  5、在第一级控制器里面设置代理
     *  6、在第一级控制器里面实现代理方法
     */
 1、在第二级控制器的.h文件,书写非正式协议(方法必须带参数)
// 1.设置协议
@protocol SecondViewControllerDelegate <NSObject>

- (void)translateValueFromSecondToFirst:(NSString *)string;

@end
 2、在第二级控制器的.h文件,写属性
//  设置属性用于传值
@property (nonatomic, copy)NSString *receiveStr;
 3、在第二级控制器的.m文件,利用代理属性,去调用协议里面的方法(同时把参数传出去)
    // 3.自己创建返回按钮,下面实现方法
    UIBarButtonItem *left = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(leftDidClicked:)];
    self.navigationItem.leftBarButtonItem = left;
    [left release];
}


#pragma mark - 实现点击方法
- (void)leftDidClicked:(UIBarButtonItem *)sender
{
    if (self.delegate && [self.delegate respondsToSelector:@selector(translateValueFromSecondToFirst:)]) {
        // 代理去执行方法
        [self.delegate translateValueFromSecondToFirst:@"李莫愁"];
    }

    [self.navigationController popViewControllerAnimated:YES];
}
 4、在第一级控制器里面遵守协议
// 4.遵守协议
@interface RootViewController ()<SecondViewControllerDelegate>
 5、在第一级控制器里面设置代理
    // 5. 设置代理方法
    secondVC.delegate = self;
 6、在第一级控制器里面实现代理方法
// 6.实现代理方法
#pragma mark - 实现代理方法
- (void)translateValueFromSecondToFirst:(NSString *)string
{
    NSLog(@"%@",string);
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

UI_页面传值问题

原文:http://blog.csdn.net/yadong_zhao/article/details/46808807

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!