我试图找出为什么此代码不会向表格中的单元格添加任何文本。我检查了按钮按下时阵列正在填充文本,但单元格中没有显示任何内容。
class ViewController: UIViewController, UITableViewDelegate {
var names: [String] = []
@IBOutlet var nameTextField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
NSUserDefaults.standardUserDefaults().setObject("Mbusi", forKey: "name")
var name = NSUserDefaults.standardUserDefaults().objectForKey("name")! as String
println(name)
NSUserDefaults.standardUserDefaults().setObject(names, forKey: "Users")
var users = NSUserDefaults.standardUserDefaults().objectForKey("Users")! as [String]
}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
self.view.endEditing(true)
}
@IBAction func addNameToList(sender: AnyObject) {
var index = 0
var namesText = nameTextField.text
names.append(namesText)
println(names)
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "Cell")
cell.textLabel?.text = names[indexPath.row]
return cell
}
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return names.count
}
}
答案 0 :(得分:2)
两件事:
你需要移动
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
在addNameToList
之外ViewController
。
其次,在将项目添加到tableView.reloadData()
数组后,您需要致电names
。