标签栏出现在屏幕边缘下方

时间:2010-11-23 14:25:06

标签: iphone

我正在创建一个应用程序,当用户在表格中选择项目时,会在底部显示一个带有标签栏的视图。我正在使用此代码:

- (id)init
{
 [super initWithNibName:nil bundle:nil];

 tabController = [[UITabBarController alloc] init];

 // Create all view controllers to be included in the tab bar
 SummaryViewController *summaryController = [[SummaryViewController alloc] init];
 ImagesViewController *imagesController = [[ImagesViewController alloc] init];

 // Make an array containing the view controllers
 NSArray *viewControllers = [NSArray arrayWithObjects:summaryController, imagesController, nil];
 [summaryController release];
 [imagesController release];

 // Attach them to the tab bar controller
 [tabController setViewControllers:viewControllers];

 [self.view addSubview:tabController.view];

    return self;
}

最终结果是底部的标签栏出现了大约一半的高度。我猜它在某种程度上与顶部的导航控制器有关(link to image)。

非常感谢任何有助于解决这个谜团的帮助!

1 个答案:

答案 0 :(得分:1)

我认为这里的问题是你将UITabBarController添加为另一个UIViewController的子视图。 UITabBarController直接从UIViewController下载。

您应该只创建标签栏控制器,配置它并将其推送到堆栈中,而不是创建此视图控制器来保存它。