
UIMenuItem::onClick 메소드를 사용하여 메뉴 아이템 클릭 이벤트를 처리하려면, 클릭 이벤트 처리를 위해 UIMenuItemDelegate 프로토콜을 구현해야 합니다.
UIMenuItemDelegate 프로토콜을 구현하는 방법은 다음과 같습니다.
#hostingforum.kr
swift
class ViewController: UIViewController, UIMenuItemDelegate {
// ...
}
클릭 이벤트 처리에서 사용할 수 있는 다양한 매개변수는 다음과 같습니다.
- sender: 클릭된 메뉴 아이템을 나타내는 UIMenuItem 인스턴스입니다.
- menu: 클릭된 메뉴 아이템이 속한 UIMenu 인스턴스입니다.
이 메소드의 사용법은 다음과 같습니다.
#hostingforum.kr
swift
let menuItem = UIMenuItem(title: "메뉴 아이템", action: #selector(menuItemClicked))
menuItem.delegate = self
// ...
menuItemClicked 메소드는 UIMenuItem::onClick 메소드가 호출될 때 호출됩니다.
#hostingforum.kr
swift
@objc func menuItemClicked(_ sender: UIMenuItem) {
// 클릭된 메뉴 아이템을 처리합니다.
}
예제 코드는 다음과 같습니다.
#hostingforum.kr
swift
import UIKit
class ViewController: UIViewController, UIMenuItemDelegate {
override func viewDidLoad() {
super.viewDidLoad()
let menuItem = UIMenuItem(title: "메뉴 아이템", action: #selector(menuItemClicked))
menuItem.delegate = self
let menu = UIMenu(title: "메뉴", children: [menuItem])
view.menu = menu
}
@objc func menuItemClicked(_ sender: UIMenuItem) {
print("메뉴 아이템 클릭됨")
}
}
이 예제 코드에서는 UIMenuItemDelegate 프로토콜을 구현하고, 클릭 이벤트 처리를 위해 menuItemClicked 메소드를 구현했습니다. 클릭된 메뉴 아이템을 처리하기 위해 print("메뉴 아이템 클릭됨")을 사용했습니다.
2025-05-07 02:38