http://www.cnblogs.com/wisekingokok/p/5250938.html
要问Android开发中最常用的控件是哪一个,那一定非TextView莫属,TextView作为Android最常用的文字显示控件,具有简易并且强大的特性。
首先通过一个示例看一看TextView的使用简单到了一个什么样的程度,如下面代码所示:
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello world"/>
仅仅三行代码,即可完成文字的显示。其中:
android:layout_width:表示TextView的宽度和容器控件一致,如果控件内内容无法再一行内显示,将自动换行。
android:layout_width:表示TextView的高度取决于控件内的内容,如果内容比较多,则自动扩大高度,已便完整显示内容。
android:text:表示TextView的内容。
TextView的显示效果可以参看《【入门篇】Android学习笔记——Hello World》。
通过上面的示例,可以看出使用TextView是一件非常容易而且简单的事儿,但是TextView本身并不简陋,它提供了多种属性,可以实现更为丰富的效果。下面将一一列举TextView中常用的一些属性:
- android:autoLink —— 自动连接属性,可以文本内容为URL,email,电话号码时,可以自动调用相应的应用打开文本内容,如文本内容为:http://www.google.com,并且设置android:autoLink=“web”时,点击此TextView可以自动调用浏览器,打开网站。此属性可选值有以下几种,当需要处理多种内容时,使用“|”符号链接:
- none:默认为none,不进行任何处理。
- web:处理包含URL的文本内容。
- email:处理包含邮箱地址的文本内容。
- phone:处理包含电话号码的文本内容。
- map:处理包含地图数据的文本内容
- all:处理包含email,phone,map或web的文本内容。
- android:drawableBottom —— 底部图片,TextView并不是只能显示文字,它也可以在控件中显示图片,此属性表示的图片将显示在文本内容的正下方中部。
- android:drawableLeft —— 左侧图片,类似android:drawableBottom,显示图片在文本内容的左侧。
- android:drawableRight —— 右侧图片。
- android:drawableTop —— 顶部图片。
- android:drawablePadding —— 控件内图片与文字的距离。
- android:ellipsize —— 文本省略,用于设置当文本内容超长时的处理逻辑。可选值有:
- start:省略号显示在文本开头,如:“…习笔记——TextView”
- end:省略号显示在文本末尾,如:“【入门篇】Android学…”
- middle:省略号显示在文本中间,如:“【入门篇】Andro…tView”
- marquee:以跑马灯的方式显示,此种方式,TextView需要获得焦点。
- android:gravity —— 文本对其方式。常用可选值如下:(更多可选值,请查阅Android API)
- left: 居左对齐。
- right:居右对齐。
- top:顶部对齐。
- bottom:底部对齐。
- center:居中对齐。
- android:ems —— 设置TextView的宽度为N个EM宽度。EM的含义是表示一个印刷排版的单位,em字面意思为:equal M,也就是说这个宽度等于M字符的宽度。并不是严格意义上的汉字宽度。
- android:inputType —— 设置文本类型,如设置为“textpassword”,将以暗文方式显示文本内容(更多可选值,请查阅Android API)。
- android:maxEms —— 设置TextView的宽度最长为N个EM宽度,此属性会覆盖android:ems属性。
- android:minEms —— 设置TextView的宽度最短为N个EM宽度,此属性会覆盖android:ems属性。
- android:maxLength —— 设置TextView的最大文本长度,超出部分不显示,无论中文或英文,每一个字符和汉字,长度都为1。
- android:lines —— 设置TextView的行数。
- android:maxLines —— 设置TextView的最大行数。
- android:minLines —— 设置TextView的最小行数。
- android:lineSpacingExtra —— 设置TextView的行间距。
- android:lineSpacingMultiplier —— 按倍数设置TextView的行间距。
- android:singleLine —— 设置文本是否仅仅单行显示,为true只显示单行。
- android:text —— 设置文本内容。
- android:textAppearance —— 设置文本外观。
- android:textColor —— 设置文本颜色。
- android:textColorLink —— 设置文本链接的颜色
- android:textSize —— 设置文本字形。
下面演示一个代码范例:
<TextView android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="all"
android:drawableBottom="@mipmap/ic_launcher"
android:drawableLeft="@mipmap/ic_launcher"
android:drawablePadding="10dp"
android:drawableRight="@mipmap/ic_launcher"
android:drawableTop="@mipmap/ic_launcher"
android:background="#a0a0a0"
android:ellipsize="end"
android:padding="12dp"
android:gravity="center"
android:textColor="#ff0000"
android:text="Hello world, http://lyjbk.com"
android:textColorLink="#0000ff"/>