【发布时间】:2011-11-24 05:17:24
【问题描述】:
我正在尝试使用另一个 UINavigationViewController 和 UIViewController 子类为 UITabBarViewController 创建主屏幕。
在应用中,有:
- 用于加载 NewsController 和 VideoController 的两个 Tab
- 应用程序完成启动后立即加载的 HomeViewController。
这是我的应用程序截图。
HomeViewController
NavigationBar 显示一半
NewsViewController
这是我的代码。
//在TabBarWithHomeDelegate.m中
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
homeViewController = [[HomeViewController alloc]init];
UINavigationController *nav = [[UINavigationController alloc]init];
nav.navigationItem.title = @"Tab 1 Data";
[nav pushViewController:homeViewController animated:NO];
[self.tabBarController setSelectedViewController:nav];
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
return YES;
}
//在 NewsViewController.m 中用于触摸主页按钮
-(IBAction) homeButtonClick:(id)sender
{
TabBarWithHomeAppDelegate * appDelegate
= [[UIApplication sharedApplication] delegate];
UITabBarController * tabBarController = appDelegate.tabBarController;
[tabBarController setSelectedViewController:nil];
[tabBarController setSelectedViewController:appDelegate.homeViewController];
}
另外,我附上了源代码。如果您看到并帮助我解决此问题,我将毕业。事实上,我自己尝试了将近 6 个小时。
【问题讨论】:
标签: iphone cocoa-touch ios4 uinavigationcontroller uitabbarcontroller