相关疑难解决方法(0)

如何为 UIBarButtonItem 和 UIButton 修改 UIMenu

iOS 14 添加了在点击或长按 UIBarButtonItem 或 UIButton 时显示菜单的功能,如下所示:

let menu = UIMenu(children: [UIAction(title: "Action", image: nil) { action in
    //do something
}])
button.menu = menu
barButtonItem = UIBarButtonItem(title: "Show Menu", image: nil, primaryAction: nil, menu: menu)
Run Code Online (Sandbox Code Playgroud)

这通常会替换操作表(UIAlertControlleractionSheet样式)。有一个动态操作表是很常见的,其中基于用户点击按钮时的某些状态仅包含或可能禁用操作。但是使用此 API,菜单是在创建按钮时创建的。如何在菜单出现之前修改菜单或使其动态化以确保适当的操作可用并在出现时处于正确的状态?

uikit ios uimenu ios14

9
推荐指数
2
解决办法
2016
查看次数

Swift 中 UIMenu 中子菜单选项的复选标记

我有以下代码,当用户点击uibarbutton导航栏中的 a 时,它会生成上下文菜单:

class ViewController: UIViewController {
    
    override func viewDidLoad() {
        super.viewDidLoad()

        view.backgroundColor = .systemGreen
        title = "Hello"
        
        let scribbleAction =  UIAction(title: "Scribble", image: UIImage(systemName: "scribble"), state: .on, handler: { (_) in })
        let textAction =  UIAction(title: "Typing", image: UIImage(systemName: "textformat"), state: .off, handler: { (_) in })
        
        let clockAction = UIAction(title: "Show Clock", image: UIImage(systemName: "clock"), state: .off, handler: { (_) in })
        let calendarAction = UIAction(title: "Date Last Used", image: UIImage(systemName: "calendar"), state: .off, handler: { …
Run Code Online (Sandbox Code Playgroud)

contextmenu ios swift

5
推荐指数
1
解决办法
2227
查看次数

标签 统计

ios ×2

contextmenu ×1

ios14 ×1

swift ×1

uikit ×1

uimenu ×1