Могу ли я использовать несколько файлов перьев с одним и тем же классом владельца ** одновременно **? - PullRequest
2 голосов
/ 20 октября 2011

Могу ли я загрузить несколько файлов перьев с одним и тем же классом владельца одновременно ?

Чтобы я мог загружать листы из разных перьев?

Я сейчас нахожусьиспользуя NSBundle:

[NSBundle loadNibNamed:@"nib1" owner:self];
[NSBundle loadNibNamed:@"nib2" owner:self];

Но я получаю это сообщение об ошибке "

<Error>: kCGErrorIllegalArgument: _CGSFindSharedWindow: WID 3387
<Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
<Error>: kCGErrorIllegalArgument: CGSOrderWindowListWithGroups: invalid window ID (3387)

спасибо

Ответы [ 2 ]

0 голосов
/ 20 октября 2011

Попробуйте следующим образом: создайте главное представление для viewcontroller, нужного вам размера и пустого.Затем создайте новый класс, производный от UIView (то есть: AlternativeView) и установите класс представления в ваших XIB как этот новый класс.В AlternativeView.m поместите метод, подобный этому:

+ (id) newAlternativeView:(NSString*)nibName{
  NSArray* nibViews =  [[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil];
  AlternativeView *me = [nibViews objectAtIndex: 0];
  return me;
}

Теперь вы можете создать свое представление с помощью + (id) newAlternativeView: (NSString *) nibName и добавить / удалить их в главном представленииViewController.Таким образом, вы можете даже составить представление со многими подпредставлениями, загруженными разными xib.

0 голосов
/ 20 октября 2011

Конечно, загрузка нескольких перьев возможна, но вы должны убедиться, что ваши привязки верны в обоих файлах перьев.Если файлы пера просто содержат представления, создайте IBOutlet для каждого NSView и таким образом разделите пики.

...