前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iOS16适配指南之UIEditMenuInteraction

iOS16适配指南之UIEditMenuInteraction

作者头像
YungFan
发布2022-08-23 15:32:07
1.2K0
发布2022-08-23 15:32:07
举报
文章被收录于专栏:学海无涯学海无涯
  • iOS 16 中新增的菜单交互,用于取代 UIMenuController 与 UIMenuItem。
  • 目前 UITextField 与 UITextView 已经默认支持。
代码语言:javascript
复制
//  Created by YungFan
import UIKit

class ViewController: UIViewController {
    lazy var textField: UITextField = {
        let textField = UITextField(frame: CGRect(x: 0, y: 500, width: 300, height: 44))
        textField.borderStyle = .roundedRect
        textField.delegate = self
        return textField
    }()

    override func viewDidLoad() {
        super.viewDidLoad()

        view.addSubview(textField)
    }
}

// MARK: - UITextFieldDelegate
extension ViewController: UITextFieldDelegate {
    // MARK: 通过代理方法添加交互的菜单
    func textField(_ textField: UITextField,
                   editMenuForCharactersIn range: NSRange,
                   suggestedActions: [UIMenuElement]) -> UIMenu? {
        let favorite = UIAction(title: "Favorite") { _ in
            print("favorite")
        }
        let share = UIAction(title: "Share") { _ in
            print("share")
        }
        let delete = UIAction(title: "Delete", attributes: [.destructive]) { _ in
            print("delete")
        }
        return UIMenu(children: [favorite, share, delete])
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-08-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档