iOS ---反向传值 协议传值

原文地址:https://blog.csdn.net/iotjin/article/details/49681595

第一个界面 A  ,第二个界面B ,从 B 传值 给A


B界面.h

#import <UIKit/UIKit.h>


//第一步 写协议

@protocol passValueDelegate <NSObject>


- (void)passValue:(NSString *)stringValues;


@end



@interface B : UIViewController


@property (weaknonatomicIBOutlet UITextField *value2TextField;


//第二步,声明协议的delegate 属性  代理通常用assingn

@property(nonatomic,assign)id<passValueDelegate>delegate;


@end





 /** ---------------------------------------------------------------------------*/

  B 界面的 .m


  //成功跳转上一界面


        

       [_delegate passValue:self.valueTextField.text];// 代理执行方法必须写在pop之前

            

         NSLog(@" valueTextField %@ ",self.valueTextField.text);

            

        [self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:1animated:YES];

  // [self.navigationController  popToRootViewControllerAnimated:YES];

  /** ---------------------------------------------------------------------------*/

//     刷新cell的      A *a= [[A alloc]init];

//            a.tableView.delegate=self;

//            [a.tableView reloadData];










 /** ---------------------------------------------------------------------------*/


A.m



#import "B.h"


@interface A () <passValueDelegate>

{


//接收从第2个界面返回的数据

    NSString* _value;


}

@property(nonatomic,strong)B *b;


@end


- (void)viewDidLoad {

    [super viewDidLoad];

    


    

    //    //为了接收从子界面返回的数据

    _b = [[b alloc]init];

        _b.delegate =self;

    

 //   [self.tableView reloadData];

    

    

}




#pragma mark - 从第二个界面返回的数据

- (void)passValue:(NSString *)stringValues

{

    

    [self.tableView reloadData];

    _value = stringValues;

    

    NSLog(@" value %@ ",_value);



}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值