首页 > 解决方案 > Cocoa - 以编程方式将 menuContext 添加到 ScrollView / CollectionView

问题描述

如何以编程方式将 menuContext 添加到 ScrollView / CollectionView?

这是我的代码,但是当我右键单击菜单时没有出现。

private var selectedPatients: [XxPatient] = []

private var contextMenu: NSMenu {
    let rightClickMenu = NSMenu()
    
    // edit info patient
    let editPatientItem = NSMenuItem()
    editPatientItem.title = LocalizationUtility.localizedString("contextMenu.editPatientInfo")
    editPatientItem.target = self
    editPatientItem.action = #selector(didSelectContextItem(_ :))
    editPatientItem.tag = 1
    
    rightClickMenu.addItem(editPatientItem)
    
    
    return rightClickMenu
}

@objc func didSelectContextItem(_ sender: NSMenuItem) {
    if sender.tag == 1 {
        // edit info patient
        openEditPatientInfo(with: selectedPatients.first)
    }
}

private func openEditPatientInfo(with patient: XxPatient?) {
    let next = HomeNewPatientController.instantiateFromStoryboard()
    
    next?.patient = patient
    // next?.delegate = self
    
    let navigationController = DSNavigationController(withRootViewController: next)
    UIUtility.presentModalController(navigationController, from: self)
}

标签: swiftcocoauikitcontextmenu

解决方案


推荐阅读