Android中用html代码来实现界面 WebView控件

本文介绍了如何在Android应用中使用WebView控件加载HTML界面,以实现灵活的界面更新,避免每次更新都需要用户升级APP。通过WebView的loadUrl()方法加载服务器上的HTML,并在HTML中设置JavaScript接口与Android交互。同时,文章提到了页面缓存问题,以及如何处理链接点击和返回键行为,确保用户体验的连贯性。
摘要由CSDN通过智能技术生成

Android提供了WebView控件专门来加载html代码实现的界面。这个控件在某些方面用起来比较方便。比如说商家活动主题界面,这种界面会随活动的变化而不断的变化,若是用Android源生xml布局,当活动界面改变时,用户必须更新APP才能更新对应活动界面,而WebView加载的html界面则不需要用户更新APP就可以达到更换界面的目的。只需要改变HTML内部实现就可以了。此处只是写了个demo提示有这种方法实现。需要三步:

一:加载html界面。用WebView实列调用loadUrl()方法,方法参数为web地址,这里采用的tomcat服务器中的一个地址。

<span style="white-space:pre">		</span>/*第一步加HTML文件加载到WebView   */
		String url = "http://192.168.1.112:8080/HQ/hunqing.html"; 
		mWebView = (WebView) findViewById(R.id.webview);
		mWebView.loadUrl(url);

二、定义交互接口名和交互方法。这里的交互接口名和交互方法都将在html对应的行为方法中引用到。格式是window.交互接口名.交互方法名。具体应用看下面的html文件。

<span style="white-space:pre">	</span>/*第二步构造交互接口名JavaScript_interface和交互方法show()等
	 * 交互接口名和方法名都将在html中JavaScript中用到
	 * 列如window.JavaScript_interface.show();*/
	class WebViewJavaScript{
		public static final String JAVASCRIPT_NAME = "JavaScript_interface"; //交互接口名
		public void show(){  //交互方法
			Mylog.v("=========================");
			Toast.makeText(WebViewActivity.this, "我是JavaScript接口方法", Toast.LENGTH_SHORT).show();
		}
		
		public void startActivity(){
			Intent intent = new Intent(WebViewActivity.this,NotificationActivity.class);
			WebViewActivity.this.startActivity(intent);
		}
		
		public void showImg(){
			Toast.makeText(WebViewActivity.this, "我是JavaScript接口方法", Toast.LENGTH_SHORT).show();
		}
		
	}
三、加载的行为(javascript语言)

<span style="white-space:pre">		</span>/*加载行为*/
		WebSettings settings = mWebView.getSettings();
		settings.setJavaScriptEnabled(true);
		mWebView.addJavascriptInterface(new WebViewJavaScript(), WebViewJavaScript.JAVASCRIPT_NAME);

这里的WebView就设置完了。

下面看html里面需要写什么,在html中的<script>标签中就引用了对应的交互接口名和方法。

<span style="white-space:pre">		</span><script>
			function labaChlick(){
				window.JavaScript_interface.show();  <!-- 引用交互接口方法-->
			}
			function p1Click(){
				//alert("你好,我是弹出对话框");
				window.JavaScript_interface.startActivity();  //这行代码关联Android源生代码
			}
			function imgClick
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值