Простой квадрат, который может изменить цвет в Интерфейсном Разработчике / Какао - PullRequest
1 голос
/ 07 июня 2010

Для приложения, которое я разрабатываю, мне нужно создать сетку квадратов. Единственное релевантное свойство, которое они должны иметь, - это возможность изменить любой цвет (RGB).

1) Какой объект я должен использовать? Пользовательские? 2) Я что-то пропускаю? Должен ли я, например, использовать Core Animation?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 07 июня 2010

Это действительно зависит от размера вашей сетки, но для чего-то маленького (скажем, до нескольких десятков квадратов, не меняющихся чаще, чем несколько раз в секунду) или прототипирования, вы можете использовать NSBox. В IB установите Тип ящика на Пользовательский, а Тип границы на Нет. Затем вы можете установить атрибут fillColor по желанию. (Mac OS X 10.5 или более поздняя версия)

0 голосов
/ 07 июня 2010

От макушки головы вы могли бы:

  1. Создать NSView подкласс для всей сетки
  2. Создать NSView подкласс для каждого квадрата сетки
  3. Создайте NSCell подкласс и используйте его с NSMatrix
  4. Используйте NSBox для каждого квадрата сетки (как предлагает Аруман)
  5. Используйте NSImageView для каждогоквадрат сетки и передайте им NSImage

Я бы использовал вариант 1 или 3.

Я не думаю, что Core Animation может предоставить более простые решения.

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