stroryboard利用Segue实现界面传值
1.如果A类-->B类传值首先我们要在B类的.h中定义一个外部可已被访问的变量
#import <UIKit/UIKit.h>
@interface TwoViewController :UIViewController
@property(nonatomic,strong)NSString *value;
2.在stroryboard中你会发现每个viewcontroller 之间存在一条线 这条线就叫做Segue 现在 就利用Segue来传值,在stroryboard中当一个viewcontroller跳到下一个viewcontroller的时候他会根据Segue的指向跳到相应的viewcontroller
一个viewcontroller可以跳到多个不同的viewcontroller这样就会出现多个Segue所以我们要现设定这个Segue的标识
3接下来我们要单机“点我传值这个按钮传值”代码如下
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifierisEqualToString:@"sendValue"]) {
TwoViewController *twoViewController = segue.destinationViewController;
// segue所指向的那个控制器就是你想要这个值传到那个类里
//这里 是听啦 别人的建议修改的 原来这里有实力 对象(但是 这个方法是 在走完第二个控制器的 //viewDidLoad方法后走得这个方法,所以 就不用实力对象啦)
twoViewController.value = @"我被传过去啦";
}
}
这样我们就把我们想要传的值传过去啦
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
这个方法会在当你点击按钮的时候自动执行,不需要我们去处理,这个方法也可以掉用B类中可以被外部访问的方法
4.要把传过来的值显示到UILabel 中
- (void)viewDidLoad
{
[superviewDidLoad];
self.showValue.text =self.value;
}
第一次在 ****上写自己的东西,,,,大神请多多指教。。若有写的不好的地方别喷我。。。
转载于:https://my.oschina.net/u/2397813/blog/467717