Я делаю упражнение в обучении и в то же время делаю игру для своего ребенка.У него есть одна из этих карточных игр (например, Pokemon), и мы отсканировали кучу и пытаемся создать игру, в которой он может играть против «компьютера».Итак, игровой процесс нужно начинать с выбора карт.Я создал класс (Card (sub of NSView), который создается с помощью IBOutlet (кнопка) и удаляет первую карту на экране, а также кнопки прокрутки - каждый раз, когда нажимается кнопка прокрутки, он определяет, чтоследующая карта должна быть, а затем вызывает метод (makeCard), который также создает новую карту.
Я не совсем понимаю, что здесь делает какао. В основном, в drawRect есть вызов атласа текстурыЯ передаю координаты текущей карты для отображения. Это означает, что каждый раз, когда я создаю экземпляр Card, создается новый NSView, верно? Я, по сути, создаю стек NSViews в моем приложении (так как x, y, wh)каждая карта одна и та же, я не могу сказать, но это выглядит логично, что происходит. Это не влияет на скорость приложения, но кажется ненужным беспорядком.
Есть ли способ, которым я могу простообновить изображение в одном экземпляре представления вместо создания экземпляра карты для каждого, который я хочу показать? И независимо от этого ответа,Как я могу удалить вид из окна после завершения процесса настройки?[view removeFromSuperview]?
Для ясности, я больше не хочу визуального представления карты.Там просто приятный глаз для настроенной части игры, так как все данные карты (включая координаты текстурного атласа) хранятся в словаре.
Кроме того, поскольку здесь я задаю вопросы, как бы я без NSImage смог масштабировать изображения из текстурного атласа.Они имеют размер 180x250 пикселей, но в будущем они будут представлены в зоне ожидания, и я бы предпочел, чтобы они не были такого размера.