热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用WKWebView修改键盘工具栏/附件视图

如何解决《使用WKWebView修改键盘工具栏/附件视图》经验,为你挑选了1个好方法。

我正在使用WKWebView,将内容可编辑的div作为富文本编辑器的核心,并希望修改键盘上方的顶部工具栏,该工具栏包含自动更正建议和格式按钮。(不知道这是否算作输入的附件视图)。

我发现一些帖子显示了如何删除该栏,但它们似乎都不起作用,理想情况下,我还是想保留自动更正部分。

至少有一个应用程序Ulysses可以做到这一点(尽管我不知道它是否具有网络视图):

确实,我非常确定我可以通过在键盘视图层次结构上进行手术来实现这一目标……但这似乎是一种乏味而脆弱的方法。

有没有更好的办法?

谢谢!



1> Samantha..:

也许本教程对您UITextInputAssistantItem有所帮助。

就是说,在摆弄了一段时间之后,使用WKWebViewI仍然只能使它第一次在键盘显示时起作用,并且每次之后它将返回到其原始状态。我发现唯一能够持续工作的东西如下所示:

class ViewController: UIViewController {

    @IBOutlet weak private var webView: WKWebView!
    private var contentView: UIView?

    override func viewDidLoad() {
        super.viewDidLoad()
        webView.loadHTMLString("
", baseURL: nil) for subview in webView.scrollView.subviews { if subview.classForCoder.description() == "WKContentView" { cOntentView= subview } } inputAssistantItem.leadingBarButtOnGroups= [UIBarButtonItemGroup(barButtonItems: [UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(donePressed(_:)))], representativeItem: nil)] inputAssistantItem.trailingBarButtOnGroups= [UIBarButtonItemGroup(barButtonItems: [UIBarButtonItem(barButtonSystemItem: .camera, target: self, action: #selector(openCamera(_:))), UIBarButtonItem(barButtonSystemItem: .action, target: self, action: #selector(actionPressed(_:)))], representativeItem: nil)] NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidShow), name: .UIKeyboardDidShow, object: nil) } @objc private func donePressed(_ sender: UIBarButtonItem) { view.endEditing(true) } @objc private func openCamera(_ sender: UIBarButtonItem) { print("camera pressed") } @objc private func actionPressed(_ sender: UIBarButtonItem) { print("action pressed") } @objc private func keyboardDidShow() { contentView?.inputAssistantItem.leadingBarButtOnGroups= [UIBarButtonItemGroup(barButtonItems: [UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(donePressed(_:)))], representativeItem: nil)] contentView?.inputAssistantItem.trailingBarButtOnGroups= [UIBarButtonItemGroup(barButtonItems: [UIBarButtonItem(barButtonSystemItem: .camera, target: self, action: #selector(openCamera(_:))), UIBarButtonItem(barButtonSystemItem: .action, target: self, action: #selector(actionPressed(_:)))], representativeItem: nil)] } }

它将给出如下内容:

每次在键盘显示时都必须在内容视图上以及视图控制器本身上进行设置,这有点令人沮丧,我希望有一种更好的方法来进行此设置。...但是很遗憾,我找不到它。


推荐阅读
  • iOS 开发技巧:TabBarController 自定义与本地通知设置
    本文介绍了如何在 iOS 中自定义 TabBarController 的背景颜色和选中项的颜色,以及如何使用本地通知设置应用程序图标上的提醒个数。通过这些技巧,可以提升应用的用户体验。 ... [详细]
  • 本文探讨了一个场景:用户成功登录后,如何确保Master-Detail视图控制器以模态形式展示。 ... [详细]
  • 当unique验证运到图片上传时
    2019独角兽企业重金招聘Python工程师标准model:public$imageFile;publicfunctionrules(){return[[[na ... [详细]
  • 本题要求在一组数中反复取出两个数相加,并将结果放回数组中,最终求出最小的总加法代价。这是一个经典的哈夫曼编码问题,利用贪心算法可以有效地解决。 ... [详细]
  • 本文详细介绍了 Android 开发中 layout_gravity 属性的使用方法及其在不同布局下的效果,旨在帮助开发者更好地理解和利用这一属性来精确控制视图的布局。 ... [详细]
  • springMVC JRS303验证 ... [详细]
  • 724. 寻找数组的中轴索引
    给定一个整数数组 `nums`,编写一个方法返回该数组的“中轴”索引。定义中轴索引为该索引左侧所有数字之和等于右侧所有数字之和的索引。如果不存在这样的索引,则返回 -1。如果有多个中轴索引,返回最左边的一个。 ... [详细]
  • 本文将详细介绍如何封装一个多功能的PickerView组件,包括文本选择、日期选择和地理位置选择等功能,旨在提供一个更加灵活和易于使用的PickerView解决方案。 ... [详细]
  • 在使用 iOS 应用时,遇到网络请求错误是常见的问题。本文将探讨两种常见的错误代码 -1003 和 -1001,并提供详细的解释和解决方案。 ... [详细]
  • 实现‘点击恢复’功能 - Tap-to-Resume Feature in SpriteKit
    了解如何在应用程序从非活动状态返回时,在SpriteKit游戏中添加一个‘点击恢复’的文字提示。 ... [详细]
  • 通常情况下,修改my.cnf配置文件后需要重启MySQL服务才能使新参数生效。然而,通过特定命令可以在不重启服务的情况下实现配置的即时更新。本文将详细介绍如何在线调整MySQL配置,并验证其有效性。 ... [详细]
  • 本文详细介绍了如何使用 HTML 和 CSS 对文件上传按钮进行样式美化,使用户界面更加友好和美观。 ... [详细]
  • 在前一篇文章中,我们已经成功地验证了原型功能的可行性。本文将继续深入探讨,通过优化之前的代码结构,逐步将单一视图控制器(VC)的应用程序重构为支持多个视图控制器的版本。 ... [详细]
  • 在Swift项目中集成Objective-C类或第三方框架的方法
    本文通过实例讲解如何在Swift项目中引入并使用Objective-C编写的ProgressHUD库。首先需要在项目中添加库文件,并设置Objective-C桥接头文件以实现语言间的互操作性。 ... [详细]
  • 本文探讨了在iOS应用中实现类似Android Snack Bar功能的方法,并特别关注如何确保Snack Bar正确显示在键盘下方。 ... [详细]
author-avatar
金豪情圣
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有