在实施我的应用程序期间,我面临以下问题。我有一个选项卡式应用程序,单击每个选项卡可以访问相应的视图:例如,单击 tab2 会打开 view2。但是我也可以通过单击 view1 上的按钮来访问 view2,如下所示:
...
[buttonToView2 addTarget:self action:@selector(gotoView2) forControlEvents:UIControlEventTouchUpInside];
...
在哪里:
- (void)gotoView2
{
//execute segue programmatically
[self performSegueWithIdentifier: @"View2Segue" sender: self];
}
View2 有一个表格,显示填充了来自 Internet 的数据的数组的数据(在viewDidAppear
方法中)。因此,选择 tab2 或单击按钮都应该将用户带到目标 view2。
这有效,但在两种情况下具有不同的行为:
- 如果我单击选项卡,则该表已经填充了数据,而应用程序从 Internet 检索信息
- 如果我单击按钮并执行 segue,则该表为空,而应用程序从 Internet 检索信息
为什么?也许是因为按钮调用的选择器是在不同的线程上执行的?请问有什么想法吗?
问候,亚萨