-1

Parse から PFObject を取得しようとするときに、コードに苦労しています。

これは私のコードです:

    var query = PFQuery(className: "message")
    query.whereKey("recipientUsername", equalTo: PFUser.currentUser())
    var messages = query.findObjects()

    var done = false

    for message in messages {

        if done == false {

            var messageObject:PFObject =


        done == true

問題は「var messageObject:PFObject =」にあります。この声明を完成させるために何を書けばよいかわかりません。

続行する方法についてのアイデアをいただければ幸いです。

4

1 に答える 1

1

messageObject変数に何をしなければならないにしても、それは必要ありません。findObjectsメソッドは の配列を返しますPFObjects。内部的には が返されNSArray、これは迅速に変換される[AnyObject]ため、次の配列にダウンキャストする必要がありますPFObject

var messages = query.findObjects() as [PFObject]

次に、ループ内でmessage変数の型が自動的に推測されるため、別の変数PFObjectを作成する必要はありません。messageObject

for message in messages { // message is of PFObject type
    if done == false {
        // Do whatever you need with message
        println(message)
    }
}

2015 年 9 月 14 日更新: Swift 1.2 以降、新しいas! 強制変換演算子を使用する必要があります。

var messages = query.findObjects() as! [PFObject]

@Kiran Ruth Rそれを指摘してくれてありがとう。

于 2014-11-25T21:54:56.577 に答える