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)#>
、これらのいずれかが問題の解決にどのように役立つかはよくわかりません。