NSMutableArray - получает целочисленный индекс индекса путем поиска по строке - PullRequest
9 голосов
/ 01 сентября 2009

Я работал с NSMutableArray, и у меня не было проблем с извлечением объекта из массива с помощью objectAtIndex:int. Вместо этого вытащить объект из массива с помощью целого числа - это способ получить позицию индекса путем поиска в массиве со строкой.

animalOptions = [[NSMutableArray alloc] init]; 
//Add items
[animalOptions addObject:@"Fish"];
[animalOptions addObject:@"Bear"];
[animalOptions addObject:@"Bird"];
[animalOptions addObject:@"Cow"];
[animalOptions addObject:@"Sheep"];

NSString * buttonTitle = [animalOptions objectAtIndex:1];
// RETURNS BEAR

int * objectIndex = [animalOptions object:@"Bear"];
// THIS IS WHAT I NEED HELP WITH, PULLING AN INDEX INTEGER WITH A STRING (ex: Bear)

Надеюсь, это имеет смысл, и есть ответ, я не смог исследовать онлайн и найти что-нибудь с помощью ссылок на классы Google или Apple.

Ответы [ 2 ]

34 голосов
/ 01 сентября 2009

Вы можете использовать метод indexOfObject: из NSArray:

NSUInteger index = [animalOptions indexOfObject:@"Bear"];

Если есть повторяющиеся записи, то возвращается самый низкий индекс этого объекта. Для получения дополнительной информации, посмотрите на документы .

0 голосов
/ 01 сентября 2009

вы можете использовать [array indexOfObject: object], который будет возвращать индекс этого объекта, теперь, так как вы хотите это сделать, он может не работать, так как указанная строка не является фактическим строковым объектом в однако массив, который делает это, определенно будет работать

NSString * buttonTitle = [animalOptions objectAtIndex:1];// RETURNS BEARint 
objectIndex = [animalOptions indexOfObject:buttonTitle] //this will return 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...