0
我似乎無法找到一個合適的示例如何使用「indexPassingTest」與NSIndexSet。 我想比較NSIndexSets,以找到差異。我希望使用下面的代碼:NSIndexSet indexPassingTest example
NSIndexSet *selectionIndexesNew = [change objectForKey:@"new"];
NSIndexSet *selectionIndexesOld = [change objectForKey:@"old"];
NSUInteger newSelection = 0;
newSelection = [selectionIndexesNew indexPassingTest:^BOOL(NSUInteger idx, BOOL *stop) {
*stop = NO;
if ([selectionIndexesOld containsIndex:idx] == NO) {
*stop = YES;
}
return idx;
}];
這似乎並沒有遍歷我的NSIndexSet。使用selectionIndexesNew的第一個值,但後續值將被忽略。我對這種方法的理解是所有的索引值都是迭代的。或者我錯了嗎?
「塊返回一個布爾值,指示obj是否通過了測試。」 – Willeke
你想重複'containsIndexes:'? – Willeke
你在這一個是正確的。它確實返回一個BOOL。 我不想替換'containsIndexes:'..我試圖找出哪個索引被選中。我有一個NSCollectionView,允許多選。我想弄清楚哪個索引是最近點擊的。我有一個關於'selectonIndexes'的觀察者。我正在比較更改字典中的新舊鍵。 –