Swift2でRealmのデータを読み出したい。
Realmを勉強中です。
サンプルやマニュアルを見ているのですが、いまいちわからず・・・
ID 読み 登録データ Time
1 かお (^^) 2010-01-01 00:00:00
2 かお (^^; 2010-01-01 00:00:01
上記データで、Timeでソートしながら「か」で「(^^)」と「(^^;」などのデータを読みだしたいのです。
下記コードはリスト化とソートがわからずに書いています。
そして、使った行のTimeだけ現在時刻で更新したいのです。
わかる方、教えていただけたら幸いです。
よろしくお願いいたします。
import UIKit
import Foundation
import RealmSwift
extension String : CollectionType {}
class dic: Object {
dynamic var ID = 0
dynamic var yomi = ""
dynamic var emoji = ""
dynamic var date = NSDate(timeIntervalSince1970: 1)
override static func primaryKey() -> String? {
return "ID"
}
}
class KeyboardViewController: UIInputViewController {
var DBdir = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
・・・
override func viewDidLoad() {
super.viewDidLoad()
・・・
}
・・・
func btnDown11(sender: UIButton){
self.button11.backgroundColor = UIColor.blackColor()
}
func btnUp11(sender: AnyObject){
self.button11.backgroundColor = UIColor.whiteColor()
tText = "か"
InsertText(tText)
}
func btnDownEnter(sender: UIButton){
self.buttonEnter.backgroundColor = UIColor.blackColor()
}
func btnUpEnter(sender: UIButton){
self.buttonEnter.backgroundColor = UIColor(red: 0.1, green: 0.5, blue: 0.7, alpha: 1.0)
let proxy = textDocumentProxy
proxy.insertText("\n")
//この辺で唯一の使ったデータの日時更新
dic.date = dateFormatter.dateFromString("2014-01-01 00:00:03")!; //日時後日固定でなく自動取得に変更
do {
let realm = try Realm(path: realmPath)
realm.write {
realm.add(dic)
}
} catch {
print("error")
}
}
・・・
func InsertText (str: String){
tText = ""
//この辺で変換「リスト」の取得
// Query using a predicate string
var tanDic = dic.objectsWhere("color = 'str' AND name BEGINSWITH 'B'")
// Query using an NSPredicate object
let predicate = NSPredicate(format: "読み = %@ AND name BEGINSWITH %@", str, "B")
tanDic = Dog.objectsWithPredicate(predicate)
//ここでリスト表示
print(tanDic)
let proxy = textDocumentProxy
proxy.insertText(str)
}
}