Cocoa Touch:如何在每次点击标签栏的标签时更新 table 视图?
Cocoa Touch: How can I update the table view everytime I tap on a tab of tabbar?
我正在使用 iOS 8 和 Objective c。
如果我在一个视图中更改值,我将看不到其他选项卡视图中的反映。但是如果我重新 运行 应用程序,我可以看到其他选项卡上的反映。有时有效,有时无效。如何确保当我点击一个 tabview 时,它会根据数据库重新加载?
我不确定您在代码中尝试的是什么,但您可以尝试在 tableView 中使用 reloadData 实现 viewDidAppear 方法:
- (void)viewDidAppear:(BOOL)animated{
[self.tableView reloadData];
}
[tableView reloadData]
是您正在寻找的那个,此 UITableView 方法通过再次调用其委托和数据源方法来刷新 table 视图以获取新数据。
我解决了!
这是我的代码:
"TheMaster" 是主标签视图。这里 selectedIndex 可以是 0,1,2.... 根据选项卡的位置。最左边的选项卡索引为 0,然后是 1,2,依此类推。
UITabBarController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"TheMaster"];
controller.selectedIndex=0;
[self presentViewController:controller animated:YES completion:nil ];
我正在使用 iOS 8 和 Objective c。 如果我在一个视图中更改值,我将看不到其他选项卡视图中的反映。但是如果我重新 运行 应用程序,我可以看到其他选项卡上的反映。有时有效,有时无效。如何确保当我点击一个 tabview 时,它会根据数据库重新加载?
我不确定您在代码中尝试的是什么,但您可以尝试在 tableView 中使用 reloadData 实现 viewDidAppear 方法:
- (void)viewDidAppear:(BOOL)animated{
[self.tableView reloadData];
}
[tableView reloadData]
是您正在寻找的那个,此 UITableView 方法通过再次调用其委托和数据源方法来刷新 table 视图以获取新数据。
我解决了! 这是我的代码: "TheMaster" 是主标签视图。这里 selectedIndex 可以是 0,1,2.... 根据选项卡的位置。最左边的选项卡索引为 0,然后是 1,2,依此类推。
UITabBarController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"TheMaster"];
controller.selectedIndex=0;
[self presentViewController:controller animated:YES completion:nil ];