max*_*ber 6 html5 select android android-spinner
Android Spinner GUI组件是具有自动完成功能的典型下拉列表.
带有数据列表的HTML5选择也是如此,但不幸的是,Android中带有datalist的HTML5 不是.
当然Android直到明年才会支持datalist(他们声称).更重要的是,任何HTML选择都是平板电脑上的黑客工作.在电话上,没关系.在平板电脑上,选择不是下拉菜单,而是在屏幕底部向上滑动一个简短列表.该列表具有单选按钮和完成按钮.它是一个奇怪的小UI组件,它放入屏幕而不是显示下拉列表.有没有办法告诉Android做正确的事情?要像在桌面上的Web浏览器中那样对待它吗?
我已经使用了jQuery UI droplist,它在平板电脑上没问题,但在手机上却很糟糕.在手机上键盘出现并阻挡显示屏.有没有办法告诉Android做正确的事情?要不显示此特定html输入元素的键盘?
我可以告诉Android:
这有点棘手,但这是可能的。您必须在您的代码和您的代码javascript
之间创建一座桥梁。WebView
java
class JsBridge {
@JavascriptInterface
public void showNativeSpinner() {
// show native spinner logic
}
}
webView.addJavascriptInterface(new JsBridge(), "jsBridge");
Run Code Online (Sandbox Code Playgroud)
在您的html
代码中,您必须删除/隐藏select
并添加某种可以单击的占位符。禁用将select
不起作用,因为禁用的元素无法接收事件(无法单击)。然后附加一个onclick
触发桥接方法的回调。所有这些都可以使用 javascript 来完成。
$("#my-select").hide();
$("#my-select-parent").append("<div id='placeholder'></div>");
$("#placeholder").on("click", function() {
jsBridge.showNativeSpinner();
});
Run Code Online (Sandbox Code Playgroud)
你可以这样执行javascript`` code to the
WebView java```代码from the
webView.loadUrl("javascript:yourLogicFunction()");
Run Code Online (Sandbox Code Playgroud)
您应该做的最后一件事是添加OnItemSelectedListener
到微调器和侦听器方法中,以再次使用该方法javascript
调用回调。WebView
loadUrl
这应该可以解决你的问题:)
归档时间: |
|
查看次数: |
682 次 |
最近记录: |