【发布时间】:2010-08-09 23:06:51
【问题描述】:
我有一个标签栏应用程序,它有一个屏幕,它根据标签屏幕的表格视图中呈现的数据显示统计信息。一旦再次选择统计视图,我想刷新此视图。我已经实现了 tabbarcontrollerdelegate 协议,以便在 viewcontroller.tabbaritem.title isequaltostring:@"foo" 时采取行动。这适用于我的 nslog 语句,但是当我尝试触发 viewcontroller 执行 viewdidload 方法时,它永远不会发生。并且刷新统计视图的代码在 viewdidload 方法中。
来自我的 AppDelegate
- (void)tabBarController:(UITabBarController*)tabBarController didEndCustomizingViewControllers: (NSArray*)viewControllers changed:(BOOL)changed
{
}
- (void)tabBarController:(UITabBarController*)tabBarController didSelectViewController:(UIViewController*)viewController {
if([viewController.tabBarItem.title isEqualToString:@"Summary"]) {
NSLog(@"didSelectViewController %@", viewController.tabBarItem.title);
[viewController viewDidLoad]; //FAIL
}
}
【问题讨论】:
标签: iphone objective-c cocoa-touch