Имеет ли setNeedsDisplay немедленный эффект или он просто ставится в очередь на потом? - PullRequest
4 голосов
/ 24 августа 2011

Кто-нибудь здесь знает, приводит ли setNeedsDisplay к немедленному drawRect вызову и немедленному обновлению экрана?Или это просто запрос в очереди?Спасибо.

1 Ответ

4 голосов
/ 24 августа 2011

Вид фактически не перерисовывается до следующего цикла рисования.Это просто уведомляет систему о том, что представление должно быть перерисовано.

См. Справочник по классам UIView

Вы, очевидно, можете сделать это, установив режим содержимого на UIViewContentModeRedraw.Я не делал этого лично, но код должен выглядеть примерно так:

UIView *redrawView = [[UIView alloc] initWithFrame:frame];
...
redrawView.contentMode = UIViewContentModeRedraw;

См. Режимы просмотра и окна: Режимы содержимого

...