我有一个 UITableViewCell
,其中有 bubbleView
内的 subview 。我添加了一个 UIMenuController,如下所示:
override func awakeFromNib() {
super.awakeFromNib()
bubbleView.addGestureRecognizer(UILongPressGestureRecognizer(target: self, action: #selector(presentMenu)))
}
@objc private func presentMenu() {
let menu = UIMenuController.shared
becomeFirstResponder()
menu.setTargetRect(bubbleView.bounds, in: bubbleView)
menu.setMenuVisible(true, animated: true)
}
这在演示时有效,但是如果我点击气泡的右侧,菜单将不会关闭,即,如果点击它呈现的同一单元格,则菜单不会关闭。点击下方或上方可关闭菜单。我在这里做错了什么?如果点击右侧,如何才能将其关闭?
最佳答案
UIMenuController 的矩形宽度似乎太大了。 您可以使用断点检查并查看其框架或将菜单背景颜色设置为例如红色并查看。
关于ios - 仅当从单元格外部点击屏幕时 UIMenuController 才会被关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57667291/