Iphone 在初始化视图中按tab项时重新加载uiview
我在选项卡栏控制器中有一个视图控制器。当我在初始化视图的“内部”时,我希望能够再次按下选项卡栏项并重新绘制视图 我的tabbarcontroller是在AppDelegate中创建的Iphone 在初始化视图中按tab项时重新加载uiview,iphone,objective-c,xcode,uitabbarcontroller,Iphone,Objective C,Xcode,Uitabbarcontroller,我在选项卡栏控制器中有一个视图控制器。当我在初始化视图的“内部”时,我希望能够再次按下选项卡栏项并重新绘制视图 我的tabbarcontroller是在AppDelegate中创建的 #AppDelegate.m - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController { NSString *titl
#AppDelegate.m
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
NSString *titleV = viewController.title;
if (titleV == @"Random") {
DetailViewController *detailViewController = [[DetailViewController alloc] init];
[detailViewController reloadView];
}
}
#ViewController.m
-(void)reloadView{
[self.view setNeedsDisplay];
NSLog(@"view updated");
}
//code
- (void)viewDidLoad
{
[super viewDidLoad];
[self checkContent];
NSLog(@"viewDidLoad");
}
//code
-(void)checkContent{
if (theContent==NULL) {
contentText.numberOfLines=0;
contentText.text = randomContent;
NSLog(@"%@", contentText.text);
} else {
contentText.text = theContent;
}
}
从日志中,我可以看到contentText.text得到了更新,尽管直到我移动到另一个视图,然后再返回,可见标签才得到更新。我不知道这为什么不起作用。任何关于如何解决这一问题的想法都将不胜感激
如果你需要更多的代码,我很乐意提供
干杯,
我不会将
-tabBarController:didSelectViewController
放在appDelegate中,而是将我的tabBarController分为子类,并遵循uitabbarelegate
,然后从中调用-tabBarController:didSelectViewController
以下是实现类似概念的教程:
我们一直在忙着实现这一点,但是的,这解决了问题。非常感谢你!