ios - Cordova iOS InAppBrowser 地址栏选项

标签 ios cordova location inappbrowser

Cordova InAppBrowser 插件允许开发人员在单击链接时打开应用程序内浏览器。在代码中,它是在监听器事件期间初始化的:

document.addEventListener("deviceready", addInAppBrowser(), false);

哪里,

document.onclick = function(e) {
    (void)addInAppBrowser = () => {
        window.cordova.InAppBrowser.open(link, target: "_blank", browserOptions); 
    }
};

browserOptions可用于修改 View 的许多方面,例如closebuttoncolor工具栏。

不幸的是,这些选项都不能用于更改地址栏address.backgroundColor的颜色。

是否可以在 InAppBrowser 初始化期间或之后更改 addressLabel 的属性,而无需修改插件代码本身。

注意:为了清晰起见,代码已缩写。

最佳答案

用一些想法更新问题

我没有找到任何简单方法来实现上述请求的功能。 InAppBrowser 似乎只接受指定的选项,这些选项被解析为对象并通过代码传递。我必须解决这个问题的一些想法是:

  • 使用加载后回调来修改插件。
  • 使用钩子(Hook)。

这些相当复杂,考虑到他们要解决的问题,我怀疑会花费太多时间来实现。

应用程序客户希望增加 URL 与 view.backgroundColor 的对比度。他们建议采用一种可以达到所需对比度的背景颜色。由于修改背景颜色并不是那么简单,但很简单:

  • fork cordova-plugin-inappbrowser并维护允许对 UI 进行精细控制的更改。该插件可能非常稳定,因此可能不会有问题。

但我相信正确的解决方案是构建一个扩展 InAppBrowser 的插件。

关于ios - Cordova iOS InAppBrowser 地址栏选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59445787/

相关文章:

Android ADT 错误,未从 SDK 文件夹加载 dx.jar

android - 在网络和 GPS 提供商之间切换

android - 如何更新显示在 map 上的 Android 逐项叠加层

javascript - 点击/单击选择输入/文本框字段的内容

ios - 使用 NSFileManager 检索多个值时收到 "fatal error: unexpectedly found nil while unwrapping an Optional value"

ios - Xcode“iPhone模拟器”未在“音频Midi设置”>“Midi网络设置”中显示

javascript - Angularjs $apply() 用于 $rootscope 变量?

android - PhoneGap 3.0 Android 构建命令执行失败 : ant jar

nginx - 多个域的位置重写

ios - 如何让页脚 View 始终位于 UITableViewController 的底部?