将UITableViewController迁移到UITableView

时间:2017-08-07 23:39:36

标签: ios swift

我目前有一个UITableViewController,但想在屏幕底部添加一个标签。我认为最简单的方法是使用带有UITableView的UIViewController。有一种简单的迁移方式吗?我注意到一些功能上有所不同;例如,UITableViewController有一个numberOfSections方法,而UITableView没有该方法。还可以使用UIViewController作为UITableView的委托吗?提前谢谢。

更新:我附上了代码图片,以及尝试实现UITableViewDataSource时出现的错误。

Source Code

3 个答案:

答案 0 :(得分:0)

据我所知,这些方法是相同的,如果它只是override,你就不会在每个方法之前需要UITableView位。您可以使用UIViewController作为代理,是的,通过myTableView.delegate = self方法设置viewDidLoad

如果它只是你需要的标签,你可以考虑以编程方式添加一个标签吗?例如,使用无数据标签获得了类似的结果 - 请参阅FTP。然后你可以玩定位。

答案 1 :(得分:0)

你可以这样做。您需要实现UITableViewDelegate并在View Controller中包含UITableViewDatasource,然后您可以使用您在TableViewController中使用的函数。

基本上你应该做的是在界面构建器中添加一个tableview,或者以编程方式(取决于你的选择)。如果通过界面构建​​器完成,则将其输出到Controller。将Delegate添加到您的类中,您就可以访问tableViewFunctions(cellForRow,numberOfItems,numberOfSections,didSelectRow等...)。

此外,在创建tableview时,请指定tableview.delegate = self和tableview.datasource = self。

答案 2 :(得分:0)

抛出此错误是因为您需要将dataSource设置为TableView对象,例如self.tableView.dataSource = self。在此之后,您可以自由使用UITableView的所有方法,包括您提到的numberOfSections