android - Web 应用程序可以控制 native 操作系统控件吗?

标签 android ios mobile web-applications

我在移动设备上制作网络应用已有一段时间了。我注意到的一个主要问题是 ios 或 android 的各种 native 操作系统控件,如键盘、键盘中的下一步按钮或完成按钮、数字键盘、下拉框、下拉框字体等无法通过 Web 应用程序有效控制。似乎每个移动操作系统都有自己处理此类问题的方式,开发人员无法控制它们。

任何人都可以分享一些关于这种行为的信息吗?

最佳答案

您的问题标题似乎与实际问题不同,由于实际问题含糊不清,我只回答标题问题。

简短的回答是否定的,通过开发网络应用程序,您实际上放弃了 native 行为,转而采用了近似的行为,并取得了不同程度的成功。我不知道有哪个框架同时支持 HTML5 和 native UI 元素,因为它们根本不会混合在一起 - 所有 HTML5 内容都会放入 WebView 容器中,而 native UI 元素要么位于该容器的前面,要么位于其后面WebView,彼此之间没有真正的了解。

话虽如此,对于像 PhoneGap 这样的框架,有一些插件可以为您提供与 native 平台的更多交互。然而,其中许多只针对一个平台,因此您的代码会变得 fragment 化,这有点违背了编写网络应用程序的目的。

关于android - Web 应用程序可以控制 native 操作系统控件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26383556/

相关文章:

android - 如何在 Android 或 Android Espresso 中获取 View 层次结构

android - 如何在onBindViewHolder中添加 View ?

ios - 使用两种类型的单元实现 MVVC 以进行向下钻取 UITableview

javascript - 修复了在 chrome for android 上滚动后元素 Y 位置计算错误的问题

java - 使用ORMLite数据库检索数据时内部类始终为空

android - 如何测试 rxjava 链接?

iOS 7 不调用 layoutSubviews

ios - 在 iOS 11 中,取消模态呈现的导航 Controller 会导致视觉重复

android - Nativescript tns 部署命令

mobile - flutter ( Dart ): Exceptions caused by rendering/A RenderFlex overflowed