多个视图控制器内的uitableview

Posted

技术标签:

【中文标题】多个视图控制器内的uitableview【英文标题】:uitableview inside multiple view controllers 【发布时间】:2013-05-12 22:19:30 【问题描述】:

我必须将 uitableview '重复'到 2 个或更多视图控制器中。就像在视图控制器中使用 uitableviewcontroller 及其方法一样,使用来自 uitablewviewcontroller 的方法/委托/数据源。 示例:我有一个 uitableviewcontroller,它以自己的样式显示 twitter 提要,所以我需要在多个视图控制器中使用此表,并且可能只是更改每个视图控制器中的 twitteruser(只是一个示例)。

尝试:我所做的是(使用情节提要)创建一个 uiviewcontroller 和一个 uitablewviewcontroller,两者都使用自己的方法。在 uiviewcontroller viewdidload 上,尝试将 uitablewviewcontroller.tableview 添加为子类。这行得通!但结果是一个空表。我试图设置委托/数据源,但它无法正常工作..

-(void)viewDidLoad

    [super viewDidLoad];

    //Add Table as subview
    thetable *t = [[thetable alloc] init];

    [self.view addSubview:t.tableView];
    t.tableView.frame = CGRectMake(0, 100, 320, 2000);
    t.tableView.backgroundColor = [UIColor blueColor]; 

此代码有效,但仅在视图控制器内显示一个空的 uitable..

*thetable 是一个 uitableviewcontroller 对象(.h、.m 和情节提要视图) *只需设置背景颜色以检查屏幕上是否有任何内容 *使用ios6

谢谢!

【问题讨论】:

【参考方案1】:

确保您在thetable 中实现表视图委托和数据源方法。在将tableView 添加到视图控制器的视图后,请尝试[t.tableView reloadData]

【讨论】:

是的,它们已实现,即使我将应用程序直接启动到 uitableviewcontroller 它也可以工作,但是当我从视图控制器开始添加 uitable 作为子视图时,它是空的。也尝试重新加载数据,但没有.. 尝试用 UIStoryboard 的 instantiateViewControllerWithIdentifier 实例化表格视图控制器:看看会发生什么......

以上是关于多个视图控制器内的uitableview的主要内容,如果未能解决你的问题,请参考以下文章

UITableViewCell 内的多个堆栈视图内的多行标签

原型 tableviewcell 内的 UIPickerView 没有选择指示器

目标 c - 滚动视图内的多个滚动视图

TableView Cell 内的多个视图

普通视图控制器内的表格视图

无法使用 CGRectMake 隐藏视图控制器内的视图