Вот краткое объяснение, которое, мы надеемся, поможет вам на вашем пути:
Пользовательские действия сообщаются вашим представлениям и окнам с помощью событий (клавиатура +мышь) и действия (события, интерпретируемые кнопками и другими элементами управления).Ваши представления должны реагировать на эти события и действия, обновляя модель , которая является структурами данных более низкого уровня, которые представляют все, что ваша программа отображает для пользователя.Если используется Какао, представление обычно связывается через объект controller для внесения изменений в модель .
- Неправильное отображение / изменение триггера
После того, как вы обновили свою модель, вам нужно сообщить представлению, что она должна быть перерисована.Это можно сделать несколькими способами, но самый простой способ сделать это - -setNeedsDisplay:YES
.Это гарантирует, что в какой-то момент в ближайшем будущем ваш вид будет перерисован для отображения обновленных данных модели.
В какой-то момент Cocoa вызовет -drawRect:
на ваш взгляд.Внутри -drawRect:
вы должны прочитать необходимые данные из вашей модели и нарисовать необходимую графику.Вы не должны делать никаких манипуляций с моделью в этом методе.