我想使具有始於一個UITableViewController
一個非常簡單的iOS應用程序,當你點擊每個細胞(一種不同的方式孩子們應該學習)的白色黑屏它將那個特定的數據爲UIViewController
。我在單元格中添加了佔位符信息,但是當我運行模擬器時,只顯示空白屏幕。我附上下面的圖片和代碼。的UITableViewController顯示模擬器
class TableViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func backBtn(_ sender: AnyObject) {
dismiss(animated: true, completion: nil);
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
override func numberOfSections(in tableView: UITableView) -> Int {
return 0
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 0
}
}
class ViewController: UIViewController, UITableViewDelegate {
@IBOutlet var tableView: UITableView!
var names = ["Manner 1", "Manner 2", "Manner 3", "Manner 4", "Manner 6", "Manner 7", "Manner 8"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 8
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell = self.tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath as IndexPath) as! Manner2Cell
cell.name.text = names[indexPath.row]
return cell
}
}
//Manner2Cell actually refers to the first cell. I know I know bad naming convention.
class Manner2Cell: UITableViewCell {
@IBOutlet weak var name: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
看着這一切,它看起來像我有一些重複的代碼。我覺得這是一個簡單的解決方法,但我無法弄清楚!
你還應該檢查幾件事:y1)numberOfSections不應該返回零。如果你忽略這個,它會默認返回1,這可能是你需要的。 2)確保在故事板中正確設置了UITableView數據源和委託。如果您需要幫助,搜索「storyboard set tableview委託和數據源」。 3)NumberOfRowsInSection應該返回names.count而不是硬編碼爲8。 – xdeleon