Iphone SDK Tabbar View розетка не была установлена - PullRequest
12 голосов
/ 29 июля 2009

Я нахожусь в конце моей веревки с этим чертовым проектом !!!!!!!

У меня есть класс UIViewController, который связан с пером, у которого есть контроллер панели вкладок с 2 вкладками. Обе вкладки загружают файлы пера. Когда я компилирую, я получаю сообщение об ошибке:

-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "MainViewController" nib but the view outlet was not set.

Что здесь происходит? Представления MainViewController заполняются nib-файлами (и представления этих файлов связаны правильно). Владелец FilesMainViewController имеет параметр «view», но не следует ли его игнорировать, поскольку я загружаю оба представления из nib? Любая помощь будет оценена!

Ответы [ 3 ]

36 голосов
/ 18 января 2010

У меня была та же ошибка (загрузил перо «xViewController», но выходное окно представления не было установлено.) В отладчике.

В Интерфейсном Разработчике я открыл xViewController.xib, щелкнул правой кнопкой мыши значок View, перетащил его из круга рядом с New Referencing Outlet на значок владельца файла, затем, когда появилось маленькое серое меню, я щелкнул мышью по представлению. (Затем сохраните, восстановите, запустите и т. Д.)

Мне не ясно, что происходит, но это исправило.

Из того, что я понимаю, если кто-то захочет продолжить, выход View (который называется "view") не был установлен, и, перетаскивая New Referencing Outlet на значок владельца файла, я установил выход View. , Отлично.

2 голосов
/ 29 июля 2009

Проблема № 1 - перо, но розетка вида не была установлена. 1. Мой MainMenu.xib, у которого есть tabbarcontroller, его владелец файла ДОЛЖЕН быть подключен к какому-либо виду. Так что помещать объект просмотра и связывать его - это нормально. Я был раздражен, потому что он продолжал показывать этот файл, а не панель вкладок. # 2 решает эту проблему

Проблема № 2 - панель вкладок не отображается 2. Создайте IBOutlet UITabBarController и свяжите его с владельцем файла. А затем в методе viewdidload сделайте это self.view = tbController.view; и теперь ваша вкладка отображается не в том пустом файле, с которым вы ссылались!

0 голосов
/ 29 июля 2009

Вам необходимо добавить вид от каждого внешнего наконечника к основному наконечнику, а затем подключить розетку вида к правильному виду. Например, если у вас есть панель вкладок в MainMenu.xib и внешний xib с именем ViewOne.xib, а затем откройте их оба, перетащите Custom View (или как он там называется) из окна ViewOne.xib в окно MainMenu.xib. Затем подключите точку просмотра вкладки для этого вида к пользовательскому виду. Вам, вероятно, следует переименовать пользовательский вид после того, как вы скопируете его в MainMenu.xib, чтобы он отличался от других представлений, которые вам придется добавить в MainMenu.xib.

...