2010-03-20 3 views
1

У меня есть два вида, один вид занимает весь экран, второй вид охватывает лишь небольшую часть. Я хочу, чтобы второе представление было на первом представлении (которое я уже сделал), но проблема в том, что когда я устанавливал значения (в данном случае UILabel), метка на экране не отображает это новое значение. Я знаю, что метод вызван, но по какой-то причине он не изменит значение метки.iPhone SDK reload Содержимое UIView

Edit: Вот код:

-(void)loadHighScores 
{ 
[no1 setText:@"test"]; 
NSLog(@"it works"); 
} 

И вот как я это называю:

highscore = [[HighScore alloc] init]; 
    [highscore loadHighScores]; 

ответ

3

Вы пробовали:

[myView setNeedsDisplay]; 

Цитата Apple, документы:

По умолчанию геометрия изменяется на вид. автоматически отображает вид без вызова drawRect: метод. Поэтому вам нужно , чтобы запросить только перерисовку вида , когда данные или состояние, используемые для , изменяют вид. В этом случае отправить сообщение setNeedsDisplay . Любые объекты UIView, помеченные как , нуждающиеся в отображении, автоматически повторно отображаются, когда приложение возвращается в цикл выполнения.

+0

Да, но он все еще не работает. –

+0

В этом случае вы можете разместить дополнительную информацию о своем коде? Как вы знаете, что метки установлены? – pheelicks

+0

I NSLoged метод, который называется –