我想在 WebView 中显示一个简单的选择标签
<select >
<option value = "1" selected>Value 1</option>
<option value="2">Value 2</option>
<option value="3">Value 3</option>
</select>
主要 Activity .java:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
webView = (WebView) findViewById(R.id.webView);
ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressbar);
//WebSettings webSettings = webView.getSettings();
//webSettings.setJavaScriptEnabled(true);
// A activer pour surcharger la méthode onJsAlert
//webView.setWebChromeClient(new WebChromeClient());
//webView.setWebViewClient(new MegViewClient(this, progressBar));
// Récupération d'un instance sauvegardée
if (savedInstanceState != null)
webView.restoreState(savedInstanceState);
else {
webView.loadUrl("http://myUrl");
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
}
AndroidManifest.xml
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
我尝试使用 webViewClient 和 webchromeClient,但我得到了相同的结果:
选择是可见的,但选项列表是空的。
如果我在装有 android 4.4 的平板电脑上尝试,则选择格式正确。
最佳答案
我遇到了同样的问题。我的解决方法是使用此 jquery 工具 ( select2 ) 替换所有选择。
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/select2/3.5.2/select2.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="http://cdn.jsdelivr.net/select2/3.5.2/select2.min.js"></script>
<select >
<option value = "1" selected>Value 1</option>
<option value="2">Value 2</option>
<option value="3">Value 3</option>
</select>
<script>
// replace all select inputs with select2
$("select").select2();
// remove the search tool inside select2
$(".select2-search, .select2-focusser").remove();
</script>
关于Android 5.0 在 webview 中选择标签为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28319130/