如何在MVVM中的UITableViewCell中绑定UIButton操作

时间:2019-01-23 10:18:38

标签: ios swift mvvm binding uibutton

我具有以下 MVVM 体系结构。没什么特别的,只是为了更好地理解。

enter image description here

主要问题是:

我需要如何绑定gTTS 2.0.1动作才能在UIButton中做出反应。

我尝试通过以下方式进行操作:

1)首先,我将属性添加为UIViewController的闭包:

ViewModel

2)我为var cellButtonActionCallback: (() -> Void)? 添加了相同的属性:

CellViewModel

3)当我设置var buttonCallback: (() -> Void)? 时:

CellViewModel

4)最后为cellViewModel.buttonCallback = cellButtonActionCallback 添加目标,并选择选择器 buttonAction 也会调用 buttonCallback

UIButton

好像我在button.bind { cellViewModel.buttonAction() } 上定义的闭包遍历了所有UITableViewController,这对我来说不是一个好主意。

实际上,这种方法很好用,但我不喜欢它。

做同一件事的最好方法是什么?

0 个答案:

没有答案