2012-01-22 3 views
3

Я ищу, чтобы заменить UITableView в разделе MasterViewController UISplitViewController. Вместо UITableView, я хочу просто View, поэтому я могу разместить UIButtons, UILables и т. Д. Эти кнопки затем будут управлять тем, что показано в разделе DetailView в SplitView.Замените TableView в SplitViewController

Я задал этот вопрос еще в одном месте, и кто-то предложил создать подкласс UISplitViewController. Этот человек не дал большого направления, помимо сохранения деталей DetailViewController.h, .m и .xib и редактирования MasterViewController.h, .m и .xib по своему вкусу.

Вот шаги, которые я взял:

  • создал новый проект и выбранный «Master-Detail» Применение
  • Неконтролируемый «Использование раскадровки», чтобы я мог получить на XIb файлов.
  • Открыт "MasterViewController.xib"
  • удалила "Table View" под "Объекты"
  • Добавлен "View Controller" на "объекты"
  • Изменено "@interface MasterViewController: UITableViewController" К «@interface MasterViewController : UIViewController "в" MasterViewController.h "
  • Прокомментировал что-либо в разделе« MasterViewController.m », что вызывало проблемы, поскольку они ссылались на свойства TableView, которых больше нет.

Тогда я получаю эту ошибку: - [UIViewController _loadViewFromNibNamed:bundle:] зарядил «MasterViewController» перо, но выход вид не был установлен «

я на правильном пути, если я, кто-то может помочь мне с.? ошибка я получаю?

в противном случае, если я буду на это не так, может кто-то мне точку в правильном направлении?

Спасибо!

+1

Попробуйте добавить UIView вместо UIViewController к объектам, а затем подключите к нему UIView доступ к файловому владельцу. – Anna

+0

Это сработало! Я не ожидал решения так быстро. Благодаря! – Jake

ответ

5

теперь, с раскадровки в последнее Xcode, вот что я сделал ...

  1. создать новый мастер-Detail проект, и позволяют раскадровке
  2. открытого MainStoryboard_iPad.storyboard
  3. нажмите на TableViewController, а затем удалить его
  4. сопротивления в new plain ViewController
  5. ctrl-click-drag-drag-перетаскивание с контроллера навигации, который является контроллером главного представления, на новый ViewController
  6. удалить файлы MasterViewController.h/.m и создать новый cl задница, что это подкласс UIViewController
  7. взять имя своего только что созданного класса замены и поместить его в имя класса секции пользовательского класса вашего инспектора идентичности

Теперь добавьте кнопки и провод вверх по дороге вы хотите. если вы придерживаетесь единственного контроллера представления в части детали, вы можете просто напрямую обратиться к detailViewController и заполнить его, как хотите; для множителей вы, вероятно, можете использовать замену segues.

для iPhone, шаги будут похожими. вам придется перетащить ctrl-click из навигационного контроллера в новый ViewController и настроить файлы ViewController.h/.m таким же образом. отступ от ваших кнопок будет нажимать на сегменты, или вы можете просто вызвать performSegueWithIdentifier: sender:.