簡體   English   中英

NSPredicate針對NSArray中的嵌套值

[英]NSPredicate against nested values in NSArray

我有一個SKNodes的NSArray,並且正在嘗試使用NSPredicate來使用謂詞過濾器對SKNodes的location.y值進行排序。 我正在嘗試以下操作,但是在運行時我得到的提示是:“此類不符合鍵y的鍵值編碼標准”,因此,我認為我還必須執行其他操作來對對象的子組件進行過濾? 這可能嗎?

NSSortDescriptor *descriptor = [NSSortDescriptor sortDescriptorWithKey:@"position.y"
                                                             ascending:YES];
NSArray *results = [myarrayofsknodes sortedArrayUsingDescriptors:[NSArray arrayWithObject:descriptor]];

LearnCocos2D的評論是正確的。 但是,您可以使用其他方式進行排序。

NSArray *original; // Populate this elsewhere
NSArray *results = [original sortedArrayUsingComparator:^(MyObject *obj1, MyObject *obj2) {
    if (obj1.position.y==obj2.position.y) {
        return NSOrderedSame;
    } else if (obj1.position.y < obj2.position.y) {
        return NSOrderedAscending;
    } else {
        return NSOrderedDescending;
    }
}];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM