Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS Swift-UITableView的最佳方法_Ios_Swift_Uitableview_Datasource - Fatal编程技术网

iOS Swift-UITableView的最佳方法

iOS Swift-UITableView的最佳方法,ios,swift,uitableview,datasource,Ios,Swift,Uitableview,Datasource,我需要知道处理iOS UITableView和UITableViewCell的最佳方法是什么。我需要知道将表数据源存储在与tableview相同的类(viewcontroller类)中是否足够好。例如:在视图类的顶部,将对象存储在数据中,其中单元格是其中定义的结构 还有一个问题:如何处理UITableViewCell上的like按钮 表中的每个单元格都是数据中的对象类型结构。对于每个单元格,我都有一个数字(likes number)和一个已初始化的变量。我在单元格中添加了一个按钮,并将该按钮设置

我需要知道处理iOS UITableView和UITableViewCell的最佳方法是什么。我需要知道将表数据源存储在与tableview相同的类(viewcontroller类)中是否足够好。例如:在视图类的顶部,将对象存储在数据中,其中单元格是其中定义的结构

还有一个问题:如何处理UITableViewCell上的like按钮


表中的每个单元格都是数据中的对象类型结构。对于每个单元格,我都有一个数字(likes number)和一个已初始化的变量。我在单元格中添加了一个按钮,并将该按钮设置为selected或unselected(在AlreadyLike变量的函数中)。然后我给每个按钮都添加了一个目标,带有一个选择器。这是一个好方法吗?

对于iOS,我们使用模型-视图-控制器范例。 模型=数据 视图=用户看到的内容 控制器=这两个控制器之间的粘合剂


因此,将数据存储在控制器中并不是一个好主意。创建模型并在ViewController中使用该模型来显示数据。通过这种方式,您可以轻松地更改模型实现,而不必担心视图,反之亦然。例如,您可以通过CoreData、SQLite将数据存储在模型中,或从网站获取数据,而视图或控制器不知道数据来自何处或如何存储。

谢谢您的回答!我将创建一个单独的类来管理模型,并在TableViewController中创建一个包含模型类型对象的数组和一个用于为该类下载数据(json下载和解析)的函数。可以吗?根据您的需要和数据,这可能是一个很好的方法。如果没有大量的数据(数组保存在内存中),这很好。否则,最好让您的模型也处理这个问题,并提供一个方法:giveMeElementAt(index:integer)。在您的模型中,您可以从CoreData或SQLite数据库加载数据