У нас есть метод делегата, который будет вызываться примерно 20 раз в секунду. В методе делегата мы обновляем UILabel, который представляет собой счетчик, как показано ниже упомянутый код:Текст UILabel не обновляется на iPad.
- (void) counterUpdated:(NSString *) value
{
lblCounter.text = [NSString stringWithString:value];
// [[NSRunLoop mainRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.5]];
// [lblCounter setNeedDisplay];
}
Я читал подобные проблемы переполнения стека, и я Внедрив там и я проверил с сохранением [lblCounter setNeedDisplay];
метода и [[NSRunLoop mainRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.5]];
после обновления lblCounter
, но он работает не так хорошо, как ожидалось.
Любые указатели?
Вы должны войти lblCounter, чтобы убедиться, что он не равен нулю. Кроме того, нет необходимости использовать stringWithString: поскольку вы передаете строку. Строка должна быть: lblCounter.text = значение; – rdelmar
Yep, 'stringWithString:' здесь не требуется. В журнале Im получает 'lblCounter.text' правильно, но' lblCounter' не обновляется на экране. –
Что значит, что вы правильно получаете lblCounter.text? Он регистрируется правильно, но вы не видите его на экране? – rdelmar