android怎么加载html

2024-12-05 04:28:08
推荐回答(4个)
回答1:

android加载html 

主要有2种方案:

方案一:

启动第三方浏览器或者安卓内置的浏览器进行加载先生html文件。

方案二:

使用android 自带的webview控件进行加载html文件或者网页。


不常用方案有1种:

使用android控件TextView进行加载html文件。


主要原理:

通过读取html文件里面的标签进行解析相关的元素从而通过浏览器,或者android自带的控件进行显示,其中webview控件本质上就是一个浏览器,TextView显示html内容就是通过解析标签,元素通过内置方法转化成相应带有属性的文本信息然后显示到界面上。

详细解决步奏:

方案一:

Uri uri = Uri.parse("http://www.XXXX.com"); //要链接的地址或者html
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

缺点如果android中没有浏览器,则无法启动显示相关内容。


方案二:

webview = (WebView) findViewById(R.id.WebView01);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://www.xxxx.com");//要链接的地址或者html

缺点:目前没有什么缺点,比其他2种好,天生为加载html文件而出生的


方案三:

不常用的方法,借助函数 Html.fromHtml()来解析html内容,并且进行显示。

TextView text1 = (TextView)findViewById(R.id.TextView02);
text1.setText(Html.fromHtml(“网页内容html”));

缺点:加载速度慢于webview加载速度。


最后

推荐使用webview进行加载html内容,其特性优于其他2种加载方式

回答2:

html页面(命名:Android.html放在assets文件夹下):::::










Text.java代码:::
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.Editable;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class Text extends Activity implements OnClickListener {

private Button button;
private TextView text;
private WebView web;
private EditText edit;
private Handler handler;

private void initView() {
button = (Button) this.findViewById(R.id.button2);
web = (WebView) this.findViewById(R.id.webView1);
edit = (EditText) this.findViewById(R.id.editText1);
button.setOnClickListener(this);
}

private void setWebView() {
web.setWebViewClient(new WebViewClient());
web.requestFocus();
WebSettings setting = web.getSettings();
setting.setJavaScriptEnabled(true);
web.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
web.requestFocus();
return false;
}
});
web.addJavascriptInterface(new SendAndroid(), "theKey");
web.loadUrl("file:///android_asset/android.html");
}

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initView();
setWebView();

handler = new Handler() {
public void handleMessage(android.os.Message msg) {
String str = msg.obj.toString();
text.setText(str);
};
};
}

@Override
public void onClick(View v) {
Editable editable = edit.getText();
web.loadUrl("javascript:get4Android(\"" + editable.toString()
+ "\")");
}

class SendAndroid {
public void runOnAndroidJavaScript(final String str) {
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("******" + str);
Message mes = handler.obtainMessage();
mes.obj = str;
handler.sendMessage(mes);
}
}).start();

}
}
}

主要是:web.loadUrl("javascript:get4Android(\"" + editable.toString()+ "\")");中的“javascript:get4Android”要和html中的【function get4Android(str){
document.getElementById("show").innerHTML="This is a message from android:"+str;
}】方法名相同

回答3:

  android加载html的方法:
  1.跳转到浏览器直接访问页面,这段代码是在Activity中拷贝来的,所以有startActivity()方法
  Uri uri = Uri.parse("http://www.XXXX.com"); //要链接的地址
  Intent intent = new Intent(Intent.ACTION_VIEW, uri);
  startActivity(intent);
  2.使用TextView显示HTML方法
  TextView text1 = (TextView)findViewById(R.id.TextView02);
  text1.setText(Html.fromHtml(“网页内容”));
  3.直接使用Android中自带的显示网页组件WebView
  webview = (WebView) findViewById(R.id.WebView01);
  webview.getSettings().setJavaScriptEnabled(true);
  webview.loadUrl("http://www.xxxx.com");
  

回答4:

一、如果手机自带有html viewer之类的软件,则直接找到html文件,点击即 可。如果此时要你选择用什么软件打开,就选择html viewer。
二、如果手机没有自带html viewer,现在的浏览器一般有文件管理功能。在 浏览器的文件管理(有的文件管理在下载里)里找到html并打开即可。
三、如果以上方法都不行,而且觉得麻烦,或是想在手机上编辑html,可以下 载个html编辑器。如:QuickEdit。