我想你應該通過在單元類中創建控制器的屬性並在cellForRowAtIndexPath方法中創建單元格後分配屬性值來實現。
例如:
細胞類
weak var yourController : YourViewController?
在cellForRowAtIndexPath
cell.yourController = self
那麼您可以在editBtnPressed
行動訪問YourViewController
。
但我建議你通過編程方式在你的控制器類中創建按鈕動作。這是一個好方法。
例如:
class YourCellClass: UITableViewCell {
@IBOulet var myBtn: UIbutton!
...
}
Yourcontroller類
在cellForRowAtIndexPath
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCell(withIdentifier: cellReuseIdentifier) as! YourCellClass
cell.myButton.addTarget(self, action: #selector(self. editBtnPressed), for: .touchUpInside)
和editBtnPressed
func editBtnPressed (_ sender: Any) {
// you can access controller here by using self
}
如果你指的** **自我的按鈕功能,它指的是什麼類? UITableView?還是UITableViewCell? –
我需要引用具有TableView的UIViewController,它具有包含此操作按鈕的Cell – moonvader