0

我有一個包含NSString對象的NSMutableArray對象。可變數組對象被稱爲_usersToAddToFriendsList。當我完成增加NSString對象吧,我運行下面的代碼爲Parse.com:需要遍歷存儲在Parse.com數據庫中的數組內的NSMutableArray

[PFUser currentUser]; 

PFQuery *query = [PFQuery queryWithClassName:@"_User"]; 

[query whereKey:@"username" equalTo:_userSubmittedUsername]; 


[query getObjectInBackgroundWithId:_objectId block:^(PFObject *object, NSError *error) { 


    object[@"friends"] = _usersToAddToFriendsList; 

    [object saveInBackground]; 


}]; 

最重要的部分是這樣的語句:object[@"friends"] = _usersToAddToFriendsList;

這需要我NSMutable陣列,並將其放置在裏面我的Parse.com數據庫中的「朋友」列。當我在Parse中創建這個列時,我將它設置爲「type」爲「array」。

所有這些工作都很完美,我可以看到我的可變數組的內容已被放置在數據庫的「朋友」列中。

雖然這是問題。稍後,當我查詢「friends」列時,我使用方法調用findObjectsInBackgroundWithBlock,並將服務器返回的對象放入名爲「objects」的NSArray對象中。

我的問題是,這意味着我現在有一個名爲「對象」的數組,包含我的原始可變數組與我的NSString。

我需要遍歷我的原始NSMutableArray的字符串值,但我不知道如何去他們,因爲我的原始可變數組包含在服務器返回的這個新的NSArray內。

我試圖玩弄,在我以前的堆棧溢出問題的人們提供各種多維數組的解決方案:Need to loop through an array that is inside of another array

但它永遠不會奏效,它總是在Xcode崩潰,並說:

-[PFUser countByEnumeratingWithState:objects:count:]: unrecognized selector sent to instance 

這讓我覺得這個問題需要專門針對Parse.com如何工作的解決方案。

我只是想能夠訪問和循環我最初存儲在我的NSMutableArray中的字符串值。

回答

1

我的問題是,這意味着我現在有一個名爲「對象」的數組,包含我的原始可變數組與我的NSString。

不完全。這意味着你有一個用戶對象數組,每個用戶對象都包含一組朋友(字符串)。

嘗試像

for (PFUser *user in objects) { 
    NSArray *friends = [user objectForKey:@"friends"]; 

    for (NSString *friend in friends) { 
     NSLog(@"Friend is '%@'", friend); 
    } 
}