JavaScript Android不起作用
javascript android doesnt work
我正在研究绑定javascript和android。
网页视图
visor.addJavascriptInterface(new WebAppInterface(this), "Android");
visor.setWebViewClient(new WebViewClient());
我的网页界面:
public class WebAppInterface {
Context mContext;
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void showToast(String toast) {
Toast.makeText(mContext, toast+" cosas", Toast.LENGTH_SHORT).show();
visor.loadUrl("www.google.com");
}
}
安卓的HTML加载
<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />
<script type="text/javascript">
function showAndroidToast(toast) {
Android.showToast(toast);
}
</script>
执行适用于 toast,但加载 url 不起作用。我做错了什么?
如果 URL 必须在首次执行后加载,则必须从不同的线程加载,如下所示:
mWebView.post(new Runnable() {
@Override
public void run() {
mWebView.loadUrl("http://google.com");
}
});
所以在你的情况下:
public class WebAppInterface {
Context mContext;
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void showToast(String toast) {
Toast.makeText(mContext, toast+" cosas", Toast.LENGTH_SHORT).show();
visor.post(new Runnable() {
@Override
public void run() {
visor.loadUrl("http://google.com");
}
});
}
}
相关文章:
- 从Android设备浏览时Javascript不起作用
- Appcelerator Android Custom Fonts不起作用
- JavaScript Audio 对象在 Android API 19 中不起作用
- Phonegap (Android) - 数据库更改版本不起作用
- Phonegap构建:通知/弹出在android中不起作用
- 为什么除了数据库(WebSQL)之外,其他数据库名称在android中不起作用
- Phonegap地理定位在Android上不起作用
- 粘性/固定标头在 Firefox 和 Android 中不起作用
- HTML 5 代码在使用 PhoneGap 的 Android 上不起作用
- Cordova电子邮件作曲家在Android上不起作用
- jQuery Slider 在 Android Chrome 浏览器上不起作用
- 在 Web 视图上自动启动 html5 视频,在 Android 4.2.2 上不起作用
- Windows.Scroll事件在Android Web View上不起作用
- Cordova iframe在iOS Safari中工作,但在Android中不起作用
- HTML5 JavaScript 自动播放在 Android 4.4 上不起作用
- JavaScript Android不起作用
- Android 浏览器 .click() 不起作用 javascript
- PhoneGap 3.0.0 Tanelih 蓝牙插件在 Android 上已启用错误回调不起作用
- Javascript 在 WebView 中不起作用 - Android
- JavaScript中的onload函数不起作用Android