我找不到一个很好的例子来解释如何使用MVC模式在我的项目中包含UITableView。假设一开始我只有两个文件'MainViewController‘(:UIViewController)和'MainModel’(:NSObject)包含我的数组和单元格数据。
我应该有一个对UITableView对象的引用,哪个文件应该委派给表,...?
发布于 2014-03-26 03:11:55
您的MainViewController将具有一个您应该指向您的UITableView实例的view属性。您可以让任何对象作为您的代理,但通常您的代理是控制它的视图控制器,它将是您的MainViewController。
也就是说,UIViewController有一个名为UITableViewController的子类,您可能应该将其用作MainViewController的超类。它有一些自动控制UITableViews的功能。实际上,实例化UITableViewController (或其任何子类)将自动创建一个UITableView,并在其view & tableView属性中指向它。
发布于 2014-03-26 08:08:27
所以你的MainModel就是模型。MainViewController是您的控制器。tableView是您的视图。将其作为属性添加到您的MainViewController中,并将您的MainViewController设置为dataSource和tableView的委托。然后,在填充tableView时,使用MainModel中的数据。例如:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [[MainModel sharedInstance] myArray].count;
}或者在MainViewController上创建一个NSArray属性,并在viewDidLoad或viewWillAppear中从MainModel填充该属性。
https://stackoverflow.com/questions/22644052
复制相似问题