TextView继承自View,用于显示文本。它有许多的子类,掌握其属性是很重要的。
TextView支持的XML属性及相关方法
XML属性 | 相关方法 | 说明 |
android:autoLink | setAutoLinkMask(int) | 设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all) |
android:autoText | setKeyListener(KeyListener) | 如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用 |
android:bufferType | setText(CharSequence,TextView.BufferType) | 指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符, 也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式,参见这里1、这里2。 |
android:capitalize | setKeyListener(KeyListener) | 设置英文字母大小写类型。可选值(none不转换/sentences句子首字母大写/words单词首字母大写/characters每个字母都大写)此处无效果,需要弹出输入法才能看得到,参见EditView此属性说明。 |
android:cursorVisible | setCursorVisible(boolean) | 设定光标为显示/隐藏,默认显示。 |
android:digits | setKeyListener(KeyListener) | 设置允许输入哪些字符。如“1234567890.+-*/%\n()” |
android:drawableBottom | setCompoundDrawablesWithIntrinsicBounds(int,int,int,int) | 在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者。 |
android:drawableEnd | setCompoundDrawablesRelativeWithIntrinsicBounds(int,int,int,int) | 在text的结束处输出一个drawable。 |
android:drawableLeft | setCompoundDrawablesWithIntrinsicBounds(int,int,int,int) | 在text的左边输出一个drawable,如图片。 |
android:drawablePadding | setCompoundDrawablePadding(int) | 设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用没有效果。 |
android:drawableRight | setCompoundDrawablesWithIntrinsicBounds(int,int,int,int) | 在text的右边输出一个drawable,如图片。 |
android:drawableStart | setCompoundDrawablesRelativeWithIntrinsicBounds(int,int,int,int) | 在text开始处输出一个drawable,如图片。 |
android:drawableTop | setCompoundDrawablesWithIntrinsicBounds(int,int,int,int) | 在text的正上方输出一个drawable,如图片。 |
android:editable |
| 设置是否可编辑。这里无效果,参见EditView。 |
android:editorExtras | setInputExtras(int) | 设置文本的额外的输入数据。在EditView再讨论。 |
android:ellipsize | setEllipsize(TextUtils.TruncateAt) | 设置当文字过长时,该控件该如何显示。有如下值设置:”start”—–省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中间;”marquee” ——以跑马灯的方式显示(动画横向移动)
|
android:ems | setEms(int) | 设置该组件的宽度,以ms为单位 |
android:fontFamily | setTypeface(Typeface) | 设置文本框内文本的字体 |
android:freezesText | setFreezesText(boolean) | 设置保存文本的内容以及光标的位置 |
android:gravity | setGravity(int) | 设置文本的对齐方式 |
android:height | setHeight(int) | 设置文本看的高度,以px为单位 |
android:hint | setHint(int) | Text为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。此属性在EditView中使用,但是这里也可以用。 |
android:imeActionId | setImeActionLabel(CharSequence,int) | 设置IME动作ID。 |
android:imeActionLabel | setImeActionLabel(CharSequence,int) | 设置IME动作标签。 |
android:imeOptions | setImeOptions(int) | 附加功能,设置右下角IME动作与编辑框相关的动作,如actionDone右下角将显示一个“完成”,而不设置默认是一个回车符号。这个在EditView中再详细说明,此处无用。 |
android:includeFontPadding | setIncludeFontPadding(boolean) | 设置文本是否包含顶部和底部额外空白,默认为true。 |
android:inputMethod | setKeyListener(KeyListener) | 为文本指定输入法,需要输入法的完全限定名(完整的包名)。 |
android:inputType | setRawInputType(int) | 设置文本的类型,用于帮助输入法显示合适的键盘类型。 |
android:lineSpacingExtra | setLineSpacing(float,float) | 设置行间距。 |
android:lineSpacingMultiplier | setLineSpacing(float,float) | 设置行间距的倍数。 |
android:lines | setLines(int) | 设置文本默认行数。 |
android:linksClickable | setLinksClickable(boolean) | 设置链接是否点击连接 |
android:marqueeRepeatLimit | setMarqueeRepeatLimit(int) | 在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为marquee_forever时表示无限次。
|
android:maxEms | setMaxEms(int) | 设置最大宽度(单位ms) |
android:maxHeight | setMaxHeight(int) | 设置最大高度(单位pixel) |
android:maxLength | setFilters(InputFilter) | 设置最大字符长度 |
android:maxLines | setMaxLines(int) | 设置文本框最多占几行 |
android:maxWidth | setMaxWidth(int) | 设置最大宽度(单位pixel) |
android:minEms | setMinEms(int) | 设置最小宽度(单位ms) |
android:minHeight | setMinHeight(int) | 设置最小高度(单位pixel) |
android:minLines | setMinLines(int) | 设置文本框最少占几行 |
android:minWidth | setMinWidth(int) | 设置最小宽度(单位pixel) |
android:numeric | setKeyListener(KeyListener) | 设置关联的数字输入法,可选值(integer整数/signed带符号的数值/decimal带小数点的数值) |
android:password | setTransformationMethod(TransformationMethod) | 设置为密码框,以小点显示文本 |
android:phoneNumber | setKeyListener(KeyListener) | 设置只接受电话号码 |
android:privateImeOptions | setPrivateImeOptions(String) | 设置关联的输入法的私有选项 |
android:scrollHorizontally | setHorizontallyScrolling(boolean) | 设置文本超出TextView的宽度的情况下,是否出现滚动条。 |
android:selectAllOnFocus | setSelectAllOnFocus(boolean) | 如果文本是可选择的,设置是否获取焦点时自动选中所有文本。 |
android:shadowColor | setShadowLayer(float,float,float,int) | 指定文本阴影的颜色,需要与shadowRadius一起使用。 |
android:shadowDx | setShadowLayer(float,float,float,int) | 设置阴影横向坐标开始位置 |
android:shadowDy | setShadowLayer(float,float,float,int) | 设置阴影纵向坐标开始位置 |
android:shadowRadius | setShadowLayer(float,float,float,int) | 设置阴影的半径。设置为0.1就变成字体的颜色了,一般设置为3.0的效果比较好。 |
android:singleLine | setTransformationMethod(TransformationMethod) | 设置单行显示。设为true不换行。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。 |
android:text | setText(CharSequence,TextView.BufferType) | 设置显示文本 |
android:textAllCaps | setAllCaps(boolean) | 设置是否将所有字母显示为大写 |
android:textAppearance |
| 设置文本外观:颜色、字体、大小等 |
android:textColor | setTextColor(int) | 设置文本颜色 |
android:textColorHighlight | setHighlightColor(int) | 设置文本被选中时的颜色 |
android:textColorHint | setHintTextColor(int) | 设置提示文本的颜色 |
android:textColorLink | setLinkTextColor(int) | 设置连接的颜色 |
android:textIsSelectable | isTextSelectable() | 当文本框不可以被编辑时,设置文本是否可以被选中 |
android:textScaleX | setTextScaleX(float) | 设置文字之间间隔 |
android:textSize | setTextSize(int,float) | 设置文本字体大小 |
android:textStyle | setTypeface(Typeface) | 设置字体风格[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开
|
android:typeface | setTypeface(Typeface) | 设置字体风格,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3]
|
android:width | setWidth(int) | 设置文本区域的宽度(单位pixel) |