TextView使用html.fromhtml加載html並顯示圖片

項目中需要顯示html的字符串,ios是用的webview,不過感覺webview太麻煩 就是用了textview

str是一個包含圖片的html格式的文件,要在textview種顯示文字和圖片,代碼如下:

int index = str.indexOf("src=\"");

//如果有圖片
    if(index>-1){
	String regex="src=\"([^\"]*)\"";
	Pattern p=Pattern.compile(regex);
	Matcher m=p.matcher(str);
	if(m.find()){
                //正則匹配出圖片
                System.out.println(m.group(1))
		img = m.group(1);
	}
        //異步嚇着圖片的方法,這裏是先把文字顯示出來,等後臺下載好圖片後,再次設置textview
        downloadImg();
     }
       Html.ImageGetter imageGetter = new ImageGetter() {
		Drawable drawable=null;
		@Override
		public Drawable getDrawable(String source) {
			//加載中提示圖片
			drawable = getResources().getDrawable(R.drawable.pictures);
			try {
				drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			return drawable;
		}
	};
        //s爲html佈局
	content.setText(Html.fromHtml(s,imageGetter,null));
如果要異步加載圖片,可以使用downloadImg();下載圖片,下載完成,再次
content.setText(Html.fromHtml(s,imageGetter,null));
不過imageGetter 的圖片需要換成你下載完成的圖片。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章