Почему мой UISplitViewController черный, когда я инициализирую его с помощью -initWithNibName:bundleName:?

Apple говорит в ссылке, что я должен использовать -init. Но это, похоже, противоречит соглашению всегда использовать назначенный инициализатор. Поскольку у него его нет, это будет тот, который принадлежит суперклассу UIViewController, верно? И там это -initWithNibName:bundleName:, если я сейчас полностью проснулся.

Однако при вызове этого с nil и nil UISplitViewController полностью черный. Когда я вызываю -init insetead, он работает отлично. Не понимаю.


person Proud Member    schedule 13.11.2010    source источник


Ответы (2)


См. здесь: Вставить UISplitViewController в свой собственный XIB?

Может помочь вам. Кажется, что вы просто не можете и не должны делать это таким образом. Я испытываю тот же черный экран, когда пытаюсь это сделать. Поместите его в основной XIB, и все в порядке. Странно, однако.

О, а также посмотрите это: UISplitviewcontroller не как контроллер rootview

Это укрепляет мою веру: это невозможно. Странный.

Рене

person Krumelur    schedule 19.12.2010

В моем случае я не звонил

[window makeKeyAndVisible];

после

[window addSubview:self.splitViewController.view];

что вызвало черный экран. Я инициализировал его как

self.splitViewController = [[UISplitViewController alloc] init];

Добавление [window makeKeyAndVisible]; устранило проблему.

person Chintan Patel    schedule 07.09.2011