1

我正在尝试在 UIViewController 中设置 UITableView。我这样做是因为它允许我添加一个带有保存和取消按钮的顶部栏。我正在使用情节提要和静态单元格对 tableview 进行建模以获取用户的输入(想想 Apple 日历应用程序中的创建新事件)。我在 Xcode 中有视图,但是在我的手机或模拟器上运行它时,tableview 不显示。这是 Xcode 中的简单视图:

在此处输入图像描述

这就是它在运行时的显示方式:

在此处输入图像描述

我已经阅读了有关添加委托和设置数据源等的信息,但实际上这只是带有文本字段的静态单元格,没有加载数据。为什么会发生这种情况以及可以做些什么来解决它?谢谢!

4

4 回答 4

2

@Made2k 看起来您找到了解决方案,但对于遇到相同问题的其他人,请注意您只能在 a 中使用UITableView带有静态单元格的 aUITableViewController。这不是一个有据可查的事实,但显然只UITableViewController知道如何处理静态单元格的布局,而常规UIViewController只需要实现UITableViewDelegateUITableViewDataSource协议,以便处理以编程方式或通过 Storyboard/Nib 添加的 UITableView 中的内容显示.

希望这可以节省一些时间。@Made2k 的解决方案很好,但确实让您的故事板不必要地忙碌。如果您不需要使用 a UIViewController,那么只需在常规中完成您的工作,这样您就不会UITableViewController头疼了。

于 2013-12-03T20:47:24.100 回答
1

如果要UITableView在 a 中使用 a,UIViewController则必须使 ViewController 成为数据源和 TableView 的委托,然后实现方法

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

如果是静态表,cellForRowAtIndexPath您将返回静态单元格的出口。有关详细说明,请查看此答案: https ://stackoverflow.com/a/19110821/3110536

于 2014-01-16T12:58:23.773 回答
0

我最终以不同的方式思考这个问题。我认为我遇到的问题是我想要导航控制器提供的所有功能,但我需要它作为控制器的基础,即没有什么可回头的。我在想这样做的唯一方法是创建一个 UIViewController 并在其中添加表格视图等,但我想出的只是创建一个新的导航控制器,现在这个视图显示为根视图像这样:

在此处输入图像描述

我不知道这是否是最佳做法,但希望如果他们遇到这个问题,它可以帮助其他人。

于 2013-10-10T19:16:32.040 回答
0

伙计,跟着哈克真的很管用!你应该试一试!
在我的要求中,我也想在我的静态单元格中添加按钮!并切换 TableView 的可见性

[self.tableView setHidden:YES/NO];

并用新数据重新加载它

[self.tableView reloadData];

用这种方式可以做很多事情!

https://stackoverflow.com/a/19110821/1752988

希望以上链接对您有所帮助!(Y)

于 2014-03-21T11:54:31.950 回答