Iphone 数据不会在ViewController之间传递

Iphone 数据不会在ViewController之间传递,iphone,objective-c,ios,uiviewcontroller,Iphone,Objective C,Ios,Uiviewcontroller,我需要在两个视图控制器之间传递数据。这是我的代码 用于第一视图控制器 -(void)editBotton { Carttable *second=[[Carttable alloc]init]; UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:second]; nav.modalTransitionStyle=UIModalTransiti

我需要在两个视图控制器之间传递数据。这是我的代码

用于第一视图控制器

-(void)editBotton {

    Carttable *second=[[Carttable alloc]init];

    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:second];
    nav.modalTransitionStyle=UIModalTransitionStyleCrossDissolve;

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

    NSString *temp=titlela.text;//titlela is UILabel

    NSLog(@"%@",temp);
    self.cart=second;
    cart.cnftitle=temp;
}
在我的可移动视图控制器中

@property(nonatomic,retain)NSString *cnftitle;
我也合成了

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSLog(@"%@",cnftitle);
}
一个NSlog在标签中打印我的文本,另一个打印为空


我遗漏了什么吗?

您正在加载视图后赋值


将赋值移动到
pushViewController:
之前(因为这是加载视图的点)

加载视图后,您正在赋值

将您的作业移动到
推送视图控制器之前:
(因为这是加载视图的点)

检查此代码

-(void)editBotton {

    Carttable *second=[[Carttable alloc]init];
    [second.view setAlpha:1.0f];

    second.cnftitle = titlea.text;

    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:second];
    nav.modalTransitionStyle=UIModalTransitionStyleCrossDissolve;

    [self.navigationController pushViewController:second animated:YES];
}
希望这对你有用

享受编码:)

检查此代码

-(void)editBotton {

    Carttable *second=[[Carttable alloc]init];
    [second.view setAlpha:1.0f];

    second.cnftitle = titlea.text;

    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:second];
    nav.modalTransitionStyle=UIModalTransitionStyleCrossDissolve;

    [self.navigationController pushViewController:second animated:YES];
}
希望这对你有用


享受编码:)

当您第一次将视图控制器推到堆栈上时,视图被加载,值被正确打印。之后您将设置该值。问题在于您的NSLog在哪里。如果在将视图控制器推送到堆栈上之前设置了字符串值,则应能正常工作。首次将视图控制器推送到堆栈上时,视图已加载,且值已正确打印。之后您将设置该值。问题在于您的NSLog在哪里。如果在将视图控制器推送到堆栈上之前设置了字符串值,那么它应该可以工作。