да, вы распечатывания путь, а не какой-либо элемент в массиве. Изменение
[myMessage setText:path];
в
[myMessage setText:[array objectAtIndex:x]; //x = whatever index in the array contains your string.
Также вы можете изменить PLIST содержать Dict, а не массив, так что вы могли бы назвать конкретный текст -
-(IBAction) buttonPress {
NSString *path = [[NSBundle mainBundle] pathForResource:@"messages" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:path];
[myMessage setText:[dict objectForKey:@"text"]];
}
В ответ на ваш вопрос о том, arc4random.
Создать перечисление, так что вы можете создать переключатель заявление -
typedef enum {
MESSAGE1,
MESSAGE2,
MESSAGE3
} messageIDs;
затем создать случайное число и мод его х, так что вы получите номер 0 и кстати X-1. (В этом случае, так как у нас есть 3 вещи внутри перечисления, х = 3)
int randomValue = arc4random() % 3;
затем использовать эту случайную Int в распределительном заявление
switch (randomValue) {
case MESSAGE1:
[myMessage setText:[dict objectForKey:@"message1"]]; //or [myMessage setText:[array objectAtIndex:MESSAGE1]]
break;
case MESSAGE2:
[myMessage setText:[dict objectForKey:@"message2"]];
break;
case MESSAGE3:
[myMessage setText:[dict objectForKey:@"message3"]];
break;
default:
break;
}
надеюсь, что это работает. Я havent пробовал это раньше ...
Я также получаю предупреждающее сообщение: «unused variable array» – hanumanDev
Вы удивлены тем, что получаете предупреждение о том, что массив не используется? Если вы посмотрите на код, вы действительно используете его где угодно? – Felixyz