标签栏作为视图控制器顶级视图的子视图;没有正确绘制

时间:2011-05-13 05:31:43

标签: objective-c cocoa-touch ios uitabbar

我有一个以编程方式创建的标签栏控制器,名为TPastJourneyTabbar。当我点击表格视图并调用didSelectRowAtIndexPath:时,我的标签栏类应该被分配,它应该被添加为另一个类的子视图。我使用以下代码完成了这个:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
    TPastJourneyTabBar * tabbar = [[TPastJourneyTabBar alloc]init];

    HGMovingAnnotationSampleViewController *detailViewController = [[HGMovingAnnotationSampleViewController alloc] initWithNibName:@"HGMovingAnnotationSampleViewController" bundle:nil];
    [detailViewController.view addSubview:tabbar.view];
    [self.navigationController pushViewController:detailViewController animated:YES];

    [detailViewController release];

}

HGMovingAnnotationSampleViewController是我将标签栏添加为子视图的类。当我运行我的应用程序时,标签栏被调用,但它没有被完全调用;即,没有看到标签栏的下部,其中标签栏项的标题被写入。如何使标签栏完全可见?

1 个答案:

答案 0 :(得分:2)

这里有设计问题。您不应该使用TabBar作为除AppDelegate窗口之外的任何子视图,因为Human Interface Guidelines状态。