Если вы используете Lombok в своем коде, то вы можете просто добавить следующую аннотацию, чтобы избавиться от этой ошибки:
@NoArgsConstructor
public class SearchController {
Майкл Ваннорсдел предлагает для этой цели разделить NSView
на подклассы, и я цитирую:
Вам действительно было бы лучше создать Подкласс NSView и его отрисовка изображение, которое вы хотите в drawRect:.
- (void)awakeFromNib
{
myImage = [[NSImage alloc] init....
[self setNeedsDisplay:YES];
}
- (void)drawRect:(NSRect)rect
{
NSSize isize = [myImage size];
[myImage drawInRect:[self bounds] fromRect:NSMakeRect(0.0, 0.0,
isize.width, isize.height) operation: NSCompositeCopy fraction:1.0];
}
Прочтите всю эту ветку на cocoabuilder , это весьма поучительно.
Окно в Какао имеет представление корневого уровня, называемое «представлением содержимого». Это представление, которое содержит все остальные в окне. По умолчанию это ' просто пустой NSView
. Но вы можете легко создать свой собственный подкласс NSView
, переопределить метод drawRect:
для рисования фонового изображения и использовать его для своего пользовательского представления.
Однако это может быть просто будет проще использовать старый добрый NSImageView
. Преимущество этого заключается в том, что вы можете настроить, например, поведение при автоматическом изменении размера, чтобы изображение было закреплено в одном углу (попробуйте это с помощью Installer.app, изменив размер окна установщика). Вы также можете сделать его полупрозрачным, чтобы фон немного просвечивал. (Опять же, я думаю об Installer.app; ваше приложение могло бы быть совершенно другим)
Надеюсь, что вы двинетесь в правильном направлении!
переопределите метод drawRect:
для рисования фонового изображения и используйте его для своего пользовательского представления.
Однако может быть проще использовать простой старый NSImageView
. Преимущество этого заключается в том, что вы можете настроить, например, поведение при автоматическом изменении размера, чтобы изображение было закреплено в одном углу (попробуйте это с помощью Installer.app, изменив размер окна установщика). Вы также можете сделать его полупрозрачным, чтобы фон немного просвечивал. (Опять же, я думаю об Installer.app; ваше приложение могло бы быть совершенно другим)
Надеюсь, что вы двинетесь в правильном направлении!
переопределите метод drawRect:
для рисования фонового изображения и используйте его для своего пользовательского представления.
Однако может быть проще использовать простой старый NSImageView
. Преимущество этого заключается в том, что вы можете настроить, например, поведение при автоматическом изменении размера, чтобы изображение было закреплено в одном углу (попробуйте это с помощью Installer.app, изменив размер окна установщика). Вы также можете сделать его полупрозрачным, чтобы фон немного просвечивал. (Опять же, я думаю об Installer.app; ваше приложение могло бы быть совершенно другим)
Надеюсь, что вы двинетесь в правильном направлении!
автоматическое изменение размера, чтобы изображение оставалось прикрепленным к одному углу (попробуйте это с помощью Installer.app, изменив размер окна установщика). Вы также можете сделать его полупрозрачным, чтобы фон немного просвечивал. (Опять же, я думаю об Installer.app; ваше приложение могло бы быть совершенно другим)Надеюсь, что вы двинетесь в правильном направлении!
автоматическое изменение размера, чтобы изображение оставалось прикрепленным к одному углу (попробуйте это с помощью Installer.app, изменив размер окна установщика). Вы также можете сделать его полупрозрачным, чтобы фон немного просвечивал. (Опять же, я думаю об Installer.app; ваше приложение могло бы быть совершенно другим)Надеюсь, что вы двинетесь в правильном направлении!