模型视图控制器中表格视图的最佳实现
Posted
技术标签:
【中文标题】模型视图控制器中表格视图的最佳实现【英文标题】:The best implementation of a tableview in Model View Controller 【发布时间】:2017-03-31 18:01:15 【问题描述】:是什么? 我正在以编程方式开发没有故事板的应用程序。
是否可以在 UIView 中实现 TableView?我试过了,但是如果我在视图中实现 TableView,当控制器接收到按钮操作时,我无法修改或访问视图的 tableView...
之后,我尝试在 ViewController 中实现 tableView,它运行良好,但我不知道这是否是一个好的实现,因为当我想用 Piker 实现 TextView/TextField 时发现了同样的问题,例如。
我的目标是拥有一个带有视图和控制器(按钮等)的干净的 viewController 代码,现在当我希望组件位于相应的视图中时,我发现自己拥有一个带有视图和多个组件的 uiviewController。
非常感谢!
【问题讨论】:
绝对有可能。您能否在您尝试在 UIView 中实现它的地方包含一些代码。也许那时我们可以提供具体的想法来帮助:) 【参考方案1】:这一切皆有可能,您遇到的问题并不是因为它是您不应该做的事情,而是它本质上与以前略有不同。要直接回答您的问题,我将直接将 tableView 实现为模态视图控制器,作为 UITableViewController 或继承表视图委托和数据源的 UIViewController(如果您不希望表视图用完,则选择此方法模态视图控制器的整个空间)。
TableView 使用简单,但了解其工作原理的每一个细节将使您变得更强大,并且能够在任何这些场景中使用它们。我不会给你写一篇关于它们的使用指南,但在你声明任何“不能做”之前继续研究它们。
在这些不同的场景中,了解实现委托方法的类变得非常重要。在 UITableViewCell 的子类中而不是在它们所在的 UIViewController 中使用 textfields 委托的实现通常是最容易的。这允许更模块化的创建。
我发现使用故事板可以更快地学习曲线,也可以节省时间。如果您的计算机速度极慢,我将为您提供没有情节提要的工作的一个借口。
【讨论】:
以上是关于模型视图控制器中表格视图的最佳实现的主要内容,如果未能解决你的问题,请参考以下文章
在 Laravel 中,直接从视图向模型或控制器请求一些数据的最佳方式是啥?