【问题标题】:Sending data from IBAction in TableViewCell to TableViewViewController将数据从 TableViewCell 中的 IBAction 发送到 TableViewViewController
【发布时间】:2015-08-05 09:55:43
【问题描述】:
我有一个TableView,它有自己的班级和TableViewCell 的班级。在TableView 类中,我有一个array,我想用添加的用户来填充,这些用户是通过按下相应TableViewCell 中的添加按钮来添加的,我现在解决它的方法是使用button.tag = indexpPath.row然后我将数组设置为全局数组,这不是最佳的。
所以我的问题是,在我的IBAction 中的关注按钮中,我怎样才能将这些数据传递给TableViewClass 而无需执行转场?
注意:它在 Swift 中
【问题讨论】:
标签:
ios
iphone
swift
uitableview
ios8
【解决方案1】:
我会定义一些“AddUserDelegate”协议,不管它是 swift 还是 Objective-c,TableViewController 实现/符合。
然后,我会向 TableCellView 类添加对 TableViewController 或协议的(弱)引用,并在该按钮的操作中相应地调用协议的委托方法。
任何需要按钮操作的附加数据都必须传递给协议的方法,以便识别已按下哪个单元格或它引用的对象等。我将添加为实例变量(如果它是引用,则再次弱)到自定义 TableView 类(你已经有一个),只是传递它们。
无论如何,当您创建自己的类时,没有理由再滥用任何视图的 tag 属性来实现业务逻辑(实际上并非如此)。