如何使用UITableViewCell附件Button作为Popover的锚点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用UITableViewCell附件Button作为Popover的锚点相关的知识,希望对你有一定的参考价值。
我试图使用UITableViewCell的accessoryButton
作为Popover的锚点,但无法使用故事板连接它。我以编程方式尝试使用accessoryButtonTappedForRowWith
函数,但这也无效。我怎么连接它?
答案
如果你的类是UITableViewController
的子类,那么使用:
override func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
print(indexPath.row)
}
检查示例代码:
class ViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
cell.textLabel?.text = "(indexPath.row)"
cell.accessoryType = UITableViewCellAccessoryType.detailButton
return cell
}
override func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
print(indexPath.row)
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 10
}
}
如果它是UIViewController
的子类,那么在该方法之前你不需要override
所以它将是:
func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
print(indexPath.row)
}
在这种情况下,不要忘记将表格视图的UITableViewDataSource
和UITableViewDelegate
与ViewController
连接起来。
查看example了解更多信息。
以上是关于如何使用UITableViewCell附件Button作为Popover的锚点的主要内容,如果未能解决你的问题,请参考以下文章
如何在 UITableViewCell 中获得透明的附件视图? (带截图)
如何使用UITableViewCell附件Button作为Popover的锚点
当附件是UITableViewCellAccessoryCheckmark时,如何将文本置于UITableViewCell中