android 点击webView中的按钮修改布局问题

android 点击webView中的按钮修改布局问题
很多时候项目都需要用到webView,而界面上面往往是不止有webview一个控件,还会有其他的控件,有可能就需要通过点击webView中的某个按钮来进行修改页面布局的操作,而这个时候,如果直接在js调用android中的方法中,也就是在android中写的方法,直接去修改布局,将会发生错误。
例如,在webView上需要点击某个按钮,来进行布局的显示和隐藏,那么在android中的写法如下:
首先初始化webView的时候: webView .addJavascriptInterface( this , "cancel" ); //对应js中的cancel.xxx
  对应cancel对象调用的方法如下:
 @JavascriptInterface
    public void showMenu(){
	id_ll_menu_all.setVisibility(View.VISIBLE);//某个控件的显示
}
如果是这样写,就会发生错误,原因跟子线程直接修改UI界面是一样的,使用正确的使用如下:
  @JavascriptInterface
    public void showMenu(){
        handler.sendEmptyMessage(1);

    }
定义一个消息变量
Handler handler = new Handler(){
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            id_ll_menu_all.setVisibility(View.VISIBLE);
        }
    };
这样既可。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值