私のアプリで。メッセージリストコードの下のコードとして、ユーザーリストとメッセージリストがあります
(解析からリストをロードします)
@IBOutlet var messageTableView: UITableView!
var messageArray:[String] = ["Lope"]
override func viewDidLoad() {
super.viewDidLoad()
retrieveMessages()
}
func retrieveMessages() {
var query = PFQuery(className:"Messages")
var user = PFUser.currentUser()
query.whereKey("user", equalTo:user.objectId)
query.findObjectsInBackgroundWithBlock { [weak self]
(objects:[AnyObject]?, error:NSError?) -> Void in
println(objects)
println("succeed")
let messages = objects
for object in objects!{
if let message = object["messageTextColumn"] as? String {
println(object)
self?.messageArray.append(message)
}
}
self?.tableView.reloadData()
}
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return messageArray.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("messageCell", forIndexPath: indexPath) as UITableViewCell
cell.textLabel?.text = messageArray[indexPath.row]
return cell
}
メッセージコードを追加 (解析する新しいメッセージを追加)
class addMessageViewController: UIViewController {
@IBOutlet weak var addMessageText: UITextField!
@IBAction func addMessage(sender: AnyObject) {
var newMessage = addMessageText.text
let message = PFObject(className: "Messages")
var user = PFUser.currentUser()
message["messageTextColumn"] = newMessage
message["user"] = user.objectId
message.saveInBackgroundWithBlock {(success: Bool, error: NSError?) -> Void in
if (success) {
println("added to Message Class")
println(user)
message.saveInBackground()
} else {
// Error saving message
}
}
}
parse local datastore を使用してこれらのデータをアプリにローカルに保存し、アプリが常にインターネット接続を使用する必要がないようにし、ユーザーがインターネットに接続していない場合でもユーザー リストとメッセージ リストが表示されるようにします。 .
問題は、ローカル データストアのどのメソッドを使用すればよいかわからないことです。ローカル データストア コードを「メッセージ コードの追加」に配置して新しいメッセージを保存し、「メッセージ リスト コード」に配置してローカルでアプリにクエリを実行する必要があります。更新がある場合は、ローカルの「メッセージ リスト」が読み込まれた後に行われます。どんな助けでも大歓迎です。ありがとう!