TextView


概述

这节课主要讲的是TextView组件,通过几个效果来带大家认识这个组件。第一个是文字大小、颜色这些基本属性的设置;第二个是通常使用一段文本,内容显示不下使用…;第三个是中划线和下划线;最后一个是跑马灯的效果,就是一段文字一直在巡回跑。通过这四个效果,大家常用的属性就都可以掌握了。

演示

1、创建新的android工程

android智能硬件开发流程 安卓智能终端开发_4s

2、打开AVD

http-dev-server->vnc_lite.html->ADV

android智能硬件开发流程 安卓智能终端开发_android_02

3、将布局修改为线性布局管理器,添加TextView组件,设置id为tv1,高和宽为内容自身大小,文字为松鼠学苑,字体颜色为蓝色,字体大小为24sp

<TextView
        android:id="@+id/tv1"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="松鼠学苑"
        android:textColor="#0000FF"
        android:textSize="24sp"/>

android智能硬件开发流程 安卓智能终端开发_省略号_03

运行:build->run…run android app

android智能硬件开发流程 安卓智能终端开发_省略号_04

4、添加一个id为TextView的组件,宽度为50dp,高度为自身内容高度,android: maxLines为控制行数,行数为1,android:ellipsize="end"为省略号在结尾

<TextView
        android:id="@+id/tv2"
        android:layout_height="wrap_content"
        android:layout_width="50dp"
        android:text="松鼠学苑"
        android:maxLines="1"
        android:ellipsize="end"
        android:textColor="#0000FF"
        android:textSize="24sp"/>

android智能硬件开发流程 安卓智能终端开发_4s_05

运行:注意要先删除上一个工程

uninstall…uninstall and …->build->run… run android app

android智能硬件开发流程 安卓智能终端开发_省略号_06

5、添加中划线,在activity_main.xml中添加TextView组件,id为3;通过java代码实现锯齿效果,R表错是因为不识别R,编译的时候可以正常运行
activity_main.xml:

<TextView
        android:id="@+id/tv3"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="松鼠学苑"
        android:textColor="#0000FF"
        android:textSize="24sp"/>

HelloAndroidActivity.java:

private TextView mTv3;
mTv3 = (TextView)findViewById(R.id.tv3);
         mTv3.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);
         mTv3.getPaint().setAntiAlias(true); //消除锯齿效果

android智能硬件开发流程 安卓智能终端开发_android智能硬件开发流程_07


android智能硬件开发流程 安卓智能终端开发_android_08


android智能硬件开发流程 安卓智能终端开发_省略号_09


android智能硬件开发流程 安卓智能终端开发_android智能硬件开发流程_10

6、添加下划线,在activity_main.xml中添加id为4的TextView组件;在HelloAndroidActivity.java中添加效果
activity_main.xml:

<TextView
        android:id="@+id/tv4"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="松鼠学苑"
        android:textColor="#0000FF"
        android:textSize="24sp"/>

android智能硬件开发流程 安卓智能终端开发_android_11


android智能硬件开发流程 安卓智能终端开发_4s_12


android智能硬件开发流程 安卓智能终端开发_4s_13

7、跑马灯效果,

<TextView
        android:id="@+id/tv5"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:text="松鼠学苑松鼠学苑松鼠学苑松鼠学苑松鼠学苑松鼠学苑松鼠学苑"
        android:textColor="#0000FF"
        android:textSize="24sp"
        android:singleLine="true" //单行显示
        android:ellipsize="marquee" //跑马灯效果
        android:marqueeRepeatLimit="marquee_forever" //循环次数
        android:focusable="true" //获得焦点
        android:focusableInTouchMode="true" />

android智能硬件开发流程 安卓智能终端开发_4s_14


android智能硬件开发流程 安卓智能终端开发_省略号_15

重点总结

TextView及其子类,当字符内容太长显示不下时可以省略号代替未显示的字符;省略号可以在显示区域的起始,中间,结束位置,或者以跑马灯的方式显示文字(textview的状态为被选中)。

其实现只需在xml中对textview的ellipsize属性做相应的设置即可。

android:ellipsize="start" 省略号在开头

     android:ellipsize="middle" 省略号在中间

     android:ellipsize="end" 省略号在结尾

     android:ellipsize="marquee" 跑马灯显示