UILabel не получает то, что я пишу на него - PullRequest
0 голосов
/ 22 июля 2011

Хитро написать тему для этого.Я думаю, что это основной вопрос, но я не могу найти ответ.Сам код показывает, что я хочу сделать, а UILabel ничего не показывает, первая строка, которую я добавляю, работает нормально, но не тогда, когда я пытаюсь выписать массив:

-(IBAction)getSongHistory:(id)sender {
[historyLabel setText:@"test write\n test write another line"];
NSArray *pastMusicArray = [pastSongs getHistory];
for(int t=2; t<[pastMusicArray count]; t++) {
    NSString *tempRow = [pastMusicArray objectAtIndex:t];
    //NSLog(@"%@", tempRow);
    [historyLabel setText:tempRow];
    [historyLabel setText:@"\n"];
}

}

NSLog действительно производит правильные вещи.Что здесь за гонг, которого я не вижу?

Ответы [ 3 ]

1 голос
/ 22 июля 2011

Мне кажется, что проблема в том, что вы устанавливаете полный текст каждый раз, а последний setText: - с @ "\ n", который является невидимой строкой.Попробуйте добавить вместо настройки текста.Что-то вроде:

historyLabel.text = [NSString stringWithFormat:@"%@%@", historyLabel.text,@"TextToAppend"];

Это добавит @ "TextToAppend" к текущему текстовому значению в метке.

Обновление: обратите внимание, что я использую свойство text, а не setter.

historyLabel.text = @"Some Text";

эквивалентно

[historyLabel setText:@"Some Text"];
0 голосов
/ 23 июля 2011

Это решение моей собственной проблемы.Надеюсь, что это может помочь кому-то еще.

NSArray *pastMusicArray = [pastSongs getHistory];
musicHistory = [[NSMutableString alloc] init];
historyLabel.numberOfLines = 0;
for(int t=2; t<[pastMusicArray count]; t++) {
    [musicHistory appendString:[[pastMusicArray objectAtIndex:t] capitalizedString]];
    [musicHistory appendString:@"\n"];
}
historyLabel.text = musicHistory;
0 голосов
/ 22 июля 2011

Использование \n в строке должно подойти, попробуйте установить для свойства numberOfLines метки значение 0, что позволит использовать любое количество строк в ней.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...