您的位置:首页 > 产品设计 > UI/UE

控制器中UITextField给上一个控制器Label传值

2015-10-23 12:03 405 查看
UITextField所在控制器.h文件

#import <UIKit/UIKit.h>

@protocol MineNickNameDelegate <NSObject>//1声明协议

@optional

-(void)changLabelText:(NSString *)text;//2声明协议方法

@end

@interface MineNickName :
UIViewController

@property (nonatomic,
weak) id<MineNickNameDelegate> delegate;//3将协议变成属性

@end

.m文件

@interface
MineNickName ()

@property (weak,
nonatomic) IBOutlet
UITextField *nameText;---(拖线)、也可声明属性

@end

//在点击事件里面进行传值(此为block跳转事件ain)

-(void)saveButtonClicked

{

//4,实现协议并传值

    if ([self.delegate
respondsToSelector:@selector(changLabelText:)]) {

        [self.delegate
changLabelText:self.nameText.text];

       

    }

  

    [self.navigationController
popViewControllerAnimated:YES];

}

Label控制器。m文件

导入

@interface
MaMITMineInformation ()<MineNickNameDelegate>//6.遵守协议

@property (weak,
nonatomic) IBOutlet
UILabel *nickNameShow;//昵称显示(Label拖线)

//实现代理协议,

//7.调用协议

#pragma mark - MineNickNameDelegate

-(void)changLabelText:(NSString *)text

{

    self.nickNameShow.text = text;

    NSLog(@"text:%@",text);

}

/**

 * 昵称

 */

Label所在cell的跳转

-(void)nickNameClicked

{

    MineNickName *nickname = [[MineNickName
alloc] init];

    nickname.title =
@"修改名字";

    nickname.hidesBottomBarWhenPushed =
YES;

    [self.navigationController
pushViewController:nickname animated:YES];

  //5.给协议赋值
    nickname.delegate =
self;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: