我只是学习如何通过推送和弹出来更改视图之间的切换。现在,在我的第二个视图中,我添加了一个标签,每次我的第二个视图被推送时,我都想改变她的值。我添加标签,将她连接到我的文件所有者,然后使用 viewdidload 更改她的值。当我进入第二个视图时,什么都没有发生。但是当我使用 viewdidapper 时,一切都很完美(但标签值更新需要一秒钟)。
我的代码是:mysecondviewcontroller.h:
@interface SecondViewController : UIViewController
{
IBOutlet UILabel *textLabel;
NSString *label;
}
@property (copy) NSString *label;
@end
mysecondviewcontroller.m(当然我合成标签):
-(void)viewDidAppear:(BOOL)animated
{
textLabel.text = label;
NSLog(@"viewdidapper2");
}
- (void)viewDidLoad
{
textLabel.text = label;
[super viewDidLoad];
NSLog(@"viewdidload2");
// Do any additional setup after loading the view from its nib.
}
我的 firstviewcontroller.m(IBAction):
- (IBAction)pushViewController:(id)sender
{
static int count = 1;
SecondViewController *secondVieController = [[SecondViewController alloc] init];
[self.navigationController pushViewController:secondVieController animated:YES];
secondVieController.title = @"second";
secondVieController.label = [NSString stringWithFormat:@"number: %d", count];
count++;
}
我的 viewdidload 有什么问题?
谢谢!