【发布时间】:2011-02-16 03:04:05
【问题描述】:
在我的应用程序中,我使用导航控制器来推送一个加载标签栏控制器和自定义导航栏的视图。问题是标签栏消失在屏幕底部下方,我不知道是什么导致了问题。
如果我在下一个视图中加载一个简单的标签栏,它会正确定位自己……但我需要的是一个标签栏控制器,在这种情况下,标签栏会消失在底部下方。我已经尝试更改标签栏的视图和大小属性,但这并没有解决问题。
我还意识到标签的图像和文本不显示(我已经设置了“收藏夹”和“联系人”的图像和文本,它们足够大并且应该在顶部可见选项卡,但它们不是)。
顺便说一句,两个标签都可以正常工作。
有一个image here。
我使用以下代码加载标签栏:
- (void)viewDidLoad {
[super viewDidLoad];
myTabBarController = [[UITabBarController alloc] init];
SettingsViewController* tab1 = [[SettingsViewController alloc] init];
AboutViewController* tab2 = [[AboutViewController alloc] init];
NSArray* controllers = [NSArray arrayWithObjects:tab1, tab2, nil];
myTabBarController.viewControllers = controllers;
[self.view insertSubview:myTabBarController.view belowSubview:myNavigationBar];
}
我是否删除导航栏都没有关系。我已经使用它进行了测试:
[self.view addSubview:myTabBarController.view];
...忘记了导航栏,但标签栏仍在底部。
我不知道问题是出在我的一个 NIB 文件中,还是出在我加载视图的方式上(尽管我在 Apple 的 SDK 文档中阅读时这样做了)。有什么想法吗?
另一个问题是...您知道当我选择第二个标签时如何更改导航栏的标题吗?我想我必须在 AboutViewController.m 的 viewDidLoad 中这样做,对吗?
感谢您的宝贵时间!
【问题讨论】:
标签: iphone uinavigationcontroller uitabbarcontroller tabbar