我有一个快速的应用程序,到目前为止只有一个视图('主视图')。我想添加一个设置页面,所以我添加了UITableViewController
并在主视图上创建了一个按钮,将此设置视图打开为弹出窗口。到现在为止还挺好。然后我想为第二个视图添加自定义代码,因此我创建了一个名为settingsViewController
的可可触摸类,它继承自UITableViewController
,并将其指定为自定义类'用于设置视图。现在设置视图中没有任何内容显示,我也不知道为什么?!
如果我删除了设置视图的自定义类规范,则所有内容都会重新开始显示。
这里的问题是什么?
我使用的是Swift 2.2和Xcode 7.3.1
当'定制课程'设置视图的字段为空:
当'定制课程'设置视图的字段中提到了settingsViewController
:
编辑:
这是我settingsViewController
课程的全部内容:
import UIKit
class settingsViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 0
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 0
}
}
答案 0 :(得分:0)
您需要通过委托方法传递每个部分中的部分和行的总数。
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 0 // This shouldn't be zero
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 0 // This shouldn't be zero
}
这些是数据源方法。您应该将它们分配给特定的数据源。
示例:
// This is the dataSource for now as an example
var dataList = [1,2,3,4,5,6,7]
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1 // We have a 1D array here only
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return dataList.count // Total no. of items in the array.
}
并且,这就是如何设置每个部分中的部分和行数作为示例。通过将它们设置为ZERO,它们很可能是一个空的部分和单元格。
尝试将它们放在ZERO以外的其他位置并自行查看。
亲切的问候,
Suman Adhikari