【发布时间】:2012-06-18 20:04:06
【问题描述】:
我正在创建一个具有以下设计的应用程序:
我有一个带有自定义 UITableViewCell 的 UITableView。 每个 UITableViewCell 包含一个滚动视图,其中包含多个大小为 150x150 的 UIView 每个小的 UIView 都包含一个 UITableView。
由于我是新手,论坛不允许我上传图片,这可以很容易地解释设计。
我已经在故事板中创建了完整的设计。我遇到的问题是内部 UITableView 没有被填充。不会调用数据源表视图控制器类的cellForRowAtIndexPath、numberOfSections 或numberOfRowsInSection 方法。
我正在使用 XCode 4.3.2 iOS5。
类结构如下:
- NewsTableViewController :邮件表的 ViewController。
- NewsTableViewCell : 自定义 TableViewCell 包含自定义 UIScrollView 的对象。
- NewsScrollView:自定义 UIScrollView 包含 UIView 和 UITableView 对象,这些对象链接到 UIView 内的 Storyboard UITableView。
- NewsInnerTableViewController : TableViewController 用作 InnerTableViews 的数据源和委托。
我在 NewsTableViewController 中创建了 NewsInnerTableViewController 的对象,并将其分配为内部 tableview 的委托和数据源。
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSSTring *CellIdentifier = @"NewCell"
NewsTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
newsInnerTableController = [[NewsInnerTableViewController alloc] initWithStyle:UITableViewStylePlain];
cell.scrollView.innerTable.delegate = newsInnerTableController;
cell.scrollView.innerTable.datasource = newsInnerTableController;
return cell;
}
我无法理解我哪里出错了。还是需要以其他方式创建类似的东西。或者需要在其他级别分配数据源和委托。
请分享您对此的看法。
【问题讨论】:
-
找到一篇解释UITableViewCell里面的UITableView的文章。猜猜这可能对我正在尝试的事情有所帮助。该教程是基本的,但我想这可以扩展以获得我想要实现的目标。 iosstuff.wordpress.com/2011/06/29/…
-
是的,它的工作原理......诀窍是将 UITableTableViewCell 作为数据源并委托给内部 UITableView。
标签: ios uitableview uiscrollview uikit