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

iOS16适配指南之UIFindInteraction

作者头像
YungFan
发布2022-08-23 15:32:20
8090
发布2022-08-23 15:32:20
举报
文章被收录于专栏:学海无涯学海无涯
  • iOS 16 中新增的查找交互,用于文本内容的查找与替换。
  • 它会弹出一个查找面板,输入需要搜索的关键字即可进行查找与替换操作。
  • UITextView、WKWebView 与 PDFView 已经默认支持,但需要将其isFindInteractionEnabled属性设置为true
代码语言:javascript
复制
//  Created by YungFan
import UIKit

class ViewController: UIViewController {
    lazy var textView: UITextView = {
        let textView = UITextView(frame: CGRect(x: 0, y: 200, width: UIScreen.main.bounds.width, height: 600))
        textView.text = """
        在 2022 年 6 月的 WWDC 22 上 Apple 推出了 Xcode 14,相比较 Xcode 13,它的功能与性能都有了巨大的提升。
        同样在 WWDC 22 上 Apple 发布了 iOS 16,推出了很多新的内容。
        在掌握了基于 iOS 15 开发的基础上,只要学习以下的新特性就能轻松过渡到 iOS 16。
        """
        textView.center = view.center
        // 打开UIFindInteraction
        textView.isFindInteractionEnabled = true
        // 添加长按手势
        let longPress = UILongPressGestureRecognizer(target: self, action: #selector(didLongPress))
        textView.addGestureRecognizer(longPress)
        return textView
    }()

    override func viewDidLoad() {
        super.viewDidLoad()

        view.addSubview(textView)
    }

    // MARK: 长按手势响应事件
    @objc func didLongPress(_ recognizer: UIGestureRecognizer) {
        // 弹出面板
        textView.findInteraction?.presentFindNavigator(showingReplace: true)
    }

    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        // 退出面板
        textView.findInteraction?.dismissFindNavigator()
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-08-22,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

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