Типичный шаблон использования UITableView должен сделать, чтобы основной UIViewController стал целевым источником данных и делегатом к UITableView, за который он держится.
Действительно ли там кто-либо прост и легок для следования учебным руководствам, которые помогли бы мне выяснить, как переместить код, который принадлежит методам UITableViewDelegate и UITableViewDataSource в отдельный класс, и сцепите это с моим UIViewController вместо этого? Я идеально хотел бы иметь и делегата и источник данных, живущий в том же классе.
Прямо сейчас я создаю UITableView через Интерфейсного Разработчика и подключаю его выход к моему классу контроллера.
Типичный код:
@interface MyController : UIViewController <UITableViewDelegate, UITableViewDataSource>
{
IBOutlet UITableview *myTableview;
}
Я хочу сделать что-то больше как это:
@interface MyController : UIViewController
{
IBOutlet UITableview *myTableview;
}
@end
@interface MyTableSourceDelegate : NSObject<UITableViewDelegate, UITableViewDataSource>
{
}
@implementation MyTableSourceDelegate
// implement all of the UITableViewDelegate and methods in this class
@end
Вы можете создать классы Separe (с UiableViewDelegate, UiableViewdataSource) и добавить их в IB в качестве внешних файлов и ссылку Ibactions
В IB вы можете перетащить «внешний объект» из библиотеки-> Cocoa Touch-> контроллеры в окно XIB. Затем вы можете выбрать этот объект, просмотреть инспектор и установить класс. Теперь он должен служить делегатом и т. Д.