UIButton 和临时 UIMenu

Posted

技术标签:

【中文标题】UIButton 和临时 UIMenu【英文标题】:UIButton and Temporary UIMenu 【发布时间】:2021-06-11 16:09:55 【问题描述】:

你能根据外部条件改变 UIButton 是否有 UIMenu 吗?

let infoButton = UIButton()
infoButton.showsMenuAsPrimaryAction = true
infoButton.menu = UIMenu(options: .displayInline, children: [])
infoButton.addAction(UIAction  [weak infoButton] (action) in
   infoButton?.menu = infoButton?.menu?.replacingChildren([new items go here...])
, for: .menuActionTriggered)

有没有办法阻止该菜单,但在某些条件下触发 TouchUpInside 类型的控件事件?

【问题讨论】:

【参考方案1】:

如果您不希望在点击按钮时出现菜单,则不应将 showsMenuAsPrimaryAction 设置为 true。该值意味着 target-action 内部的 touch up(如果有)将被忽略,而是显示菜单。

【讨论】:

以上是关于UIButton 和临时 UIMenu的主要内容,如果未能解决你的问题,请参考以下文章

Swift3:UITableViewCell 和 UIButton - 通过单击 UIButton 显示和隐藏 UITableViewCell

inputAccessoryView 中的 UITextField 不会成为FirstResponder

UIbutton忘记宽度和高度

我想通过单击按钮来更改 UIButton 和 UIImage 视图。但是 UIButton 和 Image 视图的图像是不同的[重复]

iOS UIButton - UIButton setUserInteractionEnabled 和 setEnabled 之间的区别

NSLayoutConstraint 不适用于 uibutton 和 uilabel