应用程序待办事项请帮助

时间:2014-12-22 17:30:47

标签: ios iphone xcode ipad swift

我是pragramming的新手,我正在迅速学习。我正在尝试制作一个应用程序待办事项清单,我一直坚持一些事情,其中​​一个是我的帮助。我试图在待办事项列表中保存一个项目,以便下次我在xCode上启动模拟器时,我应该看到该项目,如果我愿意,模拟器将允许我自由删除该项目。任何人都可以请求帮助如何做到这一点?我能够在视图控制器1引用的tableview上显示项目我的代码如下:

查看控制器1

import UIKit
import Foundation

 var items:[String] = []

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {


    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 items.count
    }


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

        var cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "cell")

        cell.textLabel?.text = items[indexPath.row]

        NSUserDefaults.standardUserDefaults().setObject(items, forKey: "cell")
        NSUserDefaults.standardUserDefaults().synchronize()
        NSUserDefaults.standardUserDefaults().objectForKey("cell")

        return cell

    }


}

查看控制器2:

import UIKit

class ViewController2: UIViewController, UITextFieldDelegate {

    @IBOutlet weak var textField: UITextField!

    @IBAction func button(sender: AnyObject) {

        items.append(textField.text)
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
    }

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

1 个答案:

答案 0 :(得分:0)

对于删除功能,您需要实现下面的表视图的数据源方法进行编辑。对canEditRowAtIndexPath返回true以允许删除单元格。阅读table view data source methods.

的文档
func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
    return true;
}

func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
    // if editingStyle == UITableViewCellEditingStyleDelete then
    // delete the cell and reload the table view
}

然后,您可以使用以下代码行在表格视图顶部获取默认编辑按钮:

self.navigationItem.leftBarButtonItem = self.editButtonItem;

至于在关闭/打开应用之间保存待办事项列表项,您需要查看Core DataNSKeyedArchiverNSUserDefaults并确定最适合您应用的内容。< / p>