Vit*_*lov 6 binding mvvm uibutton ios swift
我有以下MVVM架构。这并不是什么特别的事情,只是为了更好地理解。
主要问题是什么:
我需要如何绑定UIButton
动作才能在UIViewController
.
我尝试按以下方式进行操作:
1)首先,我将属性添加为闭包ViewModel
:
var cellButtonActionCallback: (() -> Void)?
Run Code Online (Sandbox Code Playgroud)
2)我为以下添加相同的属性CellViewModel
:
var buttonCallback: (() -> Void)?
Run Code Online (Sandbox Code Playgroud)
3)当我设置CellViewModel
时:
cellViewModel.buttonCallback = cellButtonActionCallback
Run Code Online (Sandbox Code Playgroud)
4)最后添加目标UIButton
,选择器buttonAction也
调用buttonCallback :
button.bind { cellViewModel.buttonAction() }
Run Code Online (Sandbox Code Playgroud)
看起来我定义的闭包UITableViewController
经历了所有viewModels
这对我来说不是一个好主意。
事实上,这种方法效果很好,但我不喜欢它。
做同样的事情最好的方法是什么?
归档时间: |
|
查看次数: |
806 次 |
最近记录: |