TextView 套用 html code

1 篇文章 / 0 new
author
TextView 套用 html code
使用 html Code
textView.setText(Html.fromHtml("<b>Hello</b> <font color=blue>TextView for Html</font>"));
TextView顯示圖片
ImageGetter img = new Html.ImageGetter() {
        public Drawable getDrawable(String imgPath) {
            Drawable drawable = null;
            try {
                URL url = new URL(imgPath);
                drawable = Drawable.createFromStream(url.openStream(), "");
            } catch (Exception e) {
                return null;
            }
            drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
            return drawable;
        }
    };
TextView desc=(TextView)findViewById(R.id.description);
desc.setText(Html.fromHtml("Description" ,img, null));
► AutoLink自動判斷連結
如果setText 內容來源為HTML, 則於程式中設置
textView.setMovementMethod(LinkMovementMethod.getInstance());
即可自動在點擊時開啟網頁. 注意:若 textview 屬於GridView或是ListView的Item,會使得無論是否點擊到TextView,onItemClickListener和onItemLongClickListener都會沒有作用
 
而是純文字的話, 可以在 xml 設定AutoLink屬性來自動產生連結效果
android:autoLink="all" or 部分生效 android:autoLink="web|email"
注意:若內容為 html 則原使用 <a> 的部分則會失效, 因此不適合混用.

若在程式中指定則為
textView.setAutoLinkMask(Linkify.ALL);
textView.setAutoLinkMask(Linkify.EMAIL_ADDRESSES|Linkify.WEB_URLS);//僅Email,URL加上超連結
使用setAutoLinkMask方法, 需再指定 textView.setMovementMethod(LinkMovementMethod.getInstance());

► 支援的標籤如下
<a href="...">, <b>, <big>, <blockquote>, <br>, <cite>
<dfn>, <div align="...">, <em>, <font size="..." color="..." face="...">
<h1>, <h2>, <h3>, <h4>, <h5>, <h6>
<i>, <img src="...">, <p>, <small>, <strike>, <strong>, <sub>, <sup>, <tt>, <u>


 
Free Web Hosting