NSMutableArray pages複数のオブジェクト ( のインスタンス)を持つ がありますPage。各Pageインスタンスには、UUID とコンテンツなどのその他のプロパティがあります。がpage変更されると、UUID 以外のすべてが変更される可能性があります。Page変更後、特定ののインデックスをpagesを使用して調べたいと思いますindexOfObject:。UUID を使用して、探しているインデックスを特定しましたが、これは問題なく機能します。
NSMutableArray *uuids = [[NSMutableArray alloc] init];
for (int i = 0; i < [self.pages count]; i++) {
[uuids addObject:[[pages objectAtIndex:i] uuid]];
}
NSUInteger indexOfPage = [uuids indexOfObject:page.uuid];
私の質問は、これを行うためのよりエレガントな方法があるかどうかです。本当に必要なのは、特定の UUID を持つPageオブジェクトのインデックスだけです。pages
- (NSIndexSet *)indexesOfObjectsPassingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicateまたはありますが
indexOfAccessibilityElement:<#(id)#>、これらのいずれかが問題の解決にどのように役立つかはよくわかりません。