gpt4 book ai didi

ios - 在 Swift 中运行应用程序时无法保存输入到 UITableView 的文本

转载 作者:行者123 更新时间:2023-11-29 02:26:03 26 4
gpt4 key购买 nike

我正在使用 Xcode 6.1.1 并在 iPhone 5C 上对其进行测试。我正在关注 Ray Wenderlich 教程“使用 Swift 的第一个核心数据应用程序”。 This is the Ray Wenderlich tutorial link当我按照另一个教程进行操作时,我也遇到了这个问题。基本上发生的是,我可以看到表格 View 行,然后我单击顶部的添加(条形铃项目),然后我输入我想要显示在该行上的字符串并单击保存,数据将不会保存。我将简单地返回到一个空的 TableView 。 Here's the table view after I entered the text and hit save. The text won't appear. This is the save screen on my iPhone

// // ViewController.swift // HitList // // Created by Faigy Mayer on 12/17/14. // Copyright (c) 2014 Faigy Mayer. All rights reserved. //

import UIKit

class ViewController: UIViewController, UITableViewDataSource {

@IBOutlet weak var tableView: UITableView!
var names = [String]()
@IBAction func addName(sender: AnyObject) {
var alert = UIAlertController(title: "New name",
message: "Add a new name",
preferredStyle: .Alert)

let saveAction = UIAlertAction(title: "Save",
style: .Default) { (action: UIAlertAction!) -> Void in

let textField = alert.textFields![0] as UITextField
self.names.append(textField.text)
self.tableView.reloadData()
}

let cancelAction = UIAlertAction(title: "Cancel",
style: .Default) { (action: UIAlertAction!) -> Void in
}

alert.addTextFieldWithConfigurationHandler {
(textField: UITextField!) -> Void in
}

alert.addAction(saveAction)
alert.addAction(cancelAction)

presentViewController(alert,
animated: true,
completion: nil)
}

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
title = "\"The List\""
tableView.registerClass(UITableViewCell.self,
forCellReuseIdentifier: "Cell")
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

// MARK: UITableViewDataSource
func tableView(tableView: UITableView,
numberOfRowsInSection section: Int) -> Int {
return names.count
}

func tableView(tableView: UITableView,
cellForRowAtIndexPath
indexPath: NSIndexPath) -> UITableViewCell {

let cell =
tableView.dequeueReusableCellWithIdentifier("Cell")
as UITableViewCell

cell.textLabel!.text = names[indexPath.row]

return cell
}

}

最佳答案

要添加委托(delegate)和数据源,只需在界面构建器中选择您的 TableView ,然后按住 ctrl 并拖动到您的 View Controller ,如下所示: interface builder然后出现一个对话框,您只需选择数据源和/或委托(delegate): select

关于ios - 在 Swift 中运行应用程序时无法保存输入到 UITableView 的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27525252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com