日期:2014-05-16  浏览次数:20569 次

TextView中如何支持html标签,放置图片和动作标签

TextView文本框和输入框几乎是一个正常的带界面的可交互的Android应用的基本组成

TextView主要作用是显示文本内容,其实还可以显示图片,当然有必要的话还可以为文本内容添加动作相应用户的触摸动作

TextView:
1.支持格式化
  a.html格式化                     *
  b.为字体或背景添加独立的颜色
2.放置图片                         *
3.产生互动事件
  a.html格式化后可以生成A标签产生动作 *
  b.自动根据内容格式匹配动作
  c.自定义互动事件

Android支持简单的html标签,方便对其内容进行格式化处理
Android支持的html标签非常有限:
<p>,<br>,<font>,<b>,<i>,<tt>,<a>,<img>,<big>,<small>

 

a,如果TextView的Text中msg含有html标签,则需要对msg进行格式化,增加如下代码:

      Spanned s=Html.fromHtml(msg);

b,如果TextView的Text中msg含有动作标签如a标签,则需要增加如下代码:

     txt.setMovementMethod(LinkMovementMethod.getInstance());

c,如果TextView中需要放置图片,则比较复杂,看如下代码

 

activity_main.xml代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_horizontal"
    >
    <Button
            android:id="@+id/leftbutton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="左按钮"
            />
        <Button
            android:id="@+id/rightbutton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
           
            android:text="右按钮"
            />

</LinearLayout>

 

MainActivity.java代码:

package com.example.exercise3;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState)