#iphone #objective-c #uitableview
#iPhone #objective-c #uitableview
Вопрос:
У меня возникла проблема с подключением моего UITableView в IB. Я почти точно следую коду из руководства, поэтому я знаю, что должно быть 4 соединения: таблица с владельцем файла (выберите делегат), таблица с владельцем файла (выберите источник данных), Владелец файла с таблицей (выберите просмотр), Владелец файла с таблицей (выберите TableView).
Моя проблема с этим последним подключением. Когда я перетаскиваю от владельца файла к таблице, единственный вариант, который я вижу, — это просмотр. ПОЧЕМУ ТАМ НЕТ TABLEVIEW?
Я думаю, что именно из-за этой проблемы я получаю пустой экран при запуске своего кода. И я сходил с ума, пытаясь понять, почему мой код неправильный, но учебник работает. Поэтому, пожалуйста, любая помощь высоко ценится =]
Ответ №1:
Вы совершаете ошибку, ваш UITableView является подвидом UIView :
Итак, ваши ссылки должны быть :
- таблица для владельца файла (выберите делегировать)
- таблица для владельца файла (выберите источник данных)
- Владелец файла для просмотра (выберите просмотр): это подключение устанавливается автоматически
- Владельца файла в таблицу (выберите TableView).
Если ваш TableView не отображается в IB, это, вероятно, потому, что вы не объявили его как IBOutlet внутри файла заголовка вашего контроллера.
Я предлагаю вам ознакомиться с разделом «Создание и настройка табличного представления» в руководстве по программированию табличного представления :
Вы также можете найти пример в примере кода «TableViewSuite» от Apple :
http://developer.apple.com/library/ios/samplecode/TableViewSuite/TableViewSuite.zip
Надеюсь, это поможет, Винсент
Комментарии:
1. Вы правы, я не объявлял это как выход. Спасибо за помощь и действительно хорошие ссылки!
Ответ №2:
есть ли у вас UITableView, указанный в классе владельца вашего файла? убедитесь, что у вас есть следующее в классе, который вы задаете в качестве владельца файла
в @interface:
UITableView *myTableView;
и
@property (nonatomic, retain) IBOutlet UITableView *myTableView;
затем в IB щелкните правой кнопкой мыши на владельце файла, и вы должны увидеть MyTableView в качестве выхода. перетащите это в TableView на экране, и вы должны быть готовы к работе
Комментарии:
1. Это была моя проблема! Большое спасибо за помощь. Действительно ценю это. Просто странно, потому что в коде руководства нет этой строки и он все еще как-то работает… В любом случае, еще раз спасибо!