如何使用Realm保存和删除我的2个文本文件?

时间:2016-12-15 13:35:42

标签: swift xcode tableview realm

如何使用Realm保存和删除我的2个文本文件?

以下是我的代码:

class ViewController: UIViewController , UITableViewDataSource , UITableViewDelegate {
    @IBOutlet weak var text1: UITextField!
    @IBOutlet weak var text2: UITextField!
    @IBOutlet weak var ttableview: UITableView!

    //delete row and tableview and array
    func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
        if editingStyle == .delete {
            array1.remove(at: indexPath.row)
            array2.remove(at: indexPath.row)
            ttableview.deleteRows(at: [indexPath], with: .fade)
        }
    }

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return array1.count
    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = ttableview.dequeueReusableCell(withIdentifier: "cell") as! Cell
        cell.lable1.text = array1[indexPath.row]
        cell.lable2.text = array2[indexPath.row]
        return cell
    }

    var array1 = [String]()
    var array2 = [String]()
}

我想在表格视图中保存并删除我的2个文本字段。

enter image description here

以下是将其添加到tableview

的代码
@IBAction func Add(_ sender: Any) {
    array1.insert(text1.text!, at: 0)
    array2.insert(text2.text!, at: 0)
    self.ttableview.reloadData()
}

func queryPeople(){
    let realm = try! Realm()
    let allPeople = realm.objects(CCat.self)
    for person in allPeople {
        print("\(person.name) to \(person.job)")
    }
}

1 个答案:

答案 0 :(得分:0)

您应首先阅读Realm的文档。 https://realm.io/docs/swift/latest/

要将对象保存到Realm,请将模型类定义为Object的子类。

class Person: Object {
    // Optional string property, defaulting to nil
    dynamic var name: String? = nil

    // Optional int property, defaulting to nil
    // RealmOptional properties should always be declared with `let`,
    // as assigning to them directly will not work as desired
    let age = RealmOptional<Int>()
}

然后创建模型类的实例。

let author = Person()
author.name = "David Foster Wallace"

创建Realm的实例。

// Get the default Realm
let realm = try! Realm()
// You only need to do this once (per thread)

开始一个事务并将对象添加到Realm。

// Add to the Realm inside a transaction
try! realm.write {
  realm.add(author)
}