我注意到,在 Facebook Messenger 中,当有人按下 UIContextualAction
时,它们会显示 UIMenu
。
我可能错过了一些东西,但我不知道该怎么做。如果有人知道执行此操作的代码,我将不胜感激。
最佳答案
好吧,我不喜欢这种方法,但到目前为止这对我有用。我发现this solution访问 UIButton,然后您可以为其设置菜单。
func tableView(_ tableView: UITableView, willBeginEditingRowAt indexPath: IndexPath) {
for subview in tableView.subviews {
if NSStringFromClass(type(of: subview)) == "_UITableViewCellSwipeContainerView" {
for swipeContainerSubview in subview.subviews {
if NSStringFromClass(type(of: swipeContainerSubview)) == "UISwipeActionPullView" {
for case let button as UIButton in swipeContainerSubview.subviews {
var menuItems = [UIAction]()
menuItems.append(UIAction(title: "Test") { action in
print("Test")
})
button.showsMenuAsPrimaryAction = true
button.menu = UIMenu(title: "", children: menuItems)
}
}
}
}
}
}
关于ios - UIContextualAction 显示 UIMenu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67505799/