天天看点

Android UI之TextView使用

说到 TextView本来就是老生常谈了,在这里就温故而知新吧,重新认识一下它,以及在日常项目UI中使用的状况。 1、TextView继承关系

Android UI之TextView使用

从上图可以看出来TextView的老爸也是祖宗是View,儿子有Button、CheckedTextView、Chronometer、DigitalClock、EditText,孙子有AutoCompleteTextView、ExtractEditText。View是Android所有UI的祖宗,类似于java里面的object祖宗一样。那么从字面可以看出View就是个视图,具备展示功能,TextView就是展示文本。

2、TextView的XML属性        说到属性---->看源码有没有大概提供            

Android UI之TextView使用
Android UI之TextView使用

android:autoLink                              设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all) 

android:autoText                               如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。 

android:bufferType                           指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符, 也就是说getText后可调用append方法设置文本内容。                   spannable 则可在给定的字符区域使用样式,参见这里1、这里2。  android:capitalize                             设置英文字母大写类型。此处无效果,需要弹出输入法才能看得到,参见EditView此属性说明。

android:cursorVisible                      设定光标为显示/隐藏,默认显示。 

android:digits                                    设置允许输入哪些字符。如“1234567890.+-*/% ()” 

android:drawableBottom                在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者。 

android:drawableLeft                       在text的左边输出一个drawable,如图片。 

android:drawablePadding              设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用                               没有效果。  

android:drawableRight                   在text的右边输出一个drawable。 

android:drawableTop                      在text的正上方输出一个drawable。 

android:editable                               设置是否可编辑。 

android:editorExtras                        设置文本的额外的输入数据。 

android:ellipsize                               设置当文字过长时,该控件该如何显示。有如下值设置:”start”—?省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中                                                              间; 

”marquee”                           ——以跑马灯的方式显示(动画横向移动) 

android:freezesText                         设置保存文本的内容以及光标的位置。 

android:gravity                                   设置文本位置,如设置成“center”,文本将居中显示。 

android:hintText                                为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。此属性在EditView中使用,但是这里也可以用。 

android:imeOptions                         附加功能,设置右下角IME动作与编辑框相关的动作,如actionDone右下角将显示一个“完成”,而不设置默认是一个回车符号。这个在                EditView中再详细说明,此处无用。 

android:imeActionId                         设置IME动作ID。 

android:imeActionLabel                  设置IME动作标签。 

android:includeFontPadding          设置文本是否包含顶部和底部额外空白,默认为true。 

android:inputMethod                        为文本指定输入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,但是这里报错找不到。 

android:inputType                             设置文本的类型,用于帮助输入法显示合适的键盘类型。在EditView中再详细说明,这里无效果。 

android:linksClickable                     设置链接是否点击连接,即使设置了autoLink。 

android:marqueeRepeatLimit        在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为marquee_forever时表示无限次。 

android:ems                                       设置TextView的宽度为N个字符的宽度。这里测试为一个汉字字符宽度 

android:maxEms                              设置TextView的宽度为最长为N个字符的宽度。与ems同时使用时覆盖ems选项。 

android:minEms                               设置TextView的宽度为最短为N个字符的宽度。与ems同时使用时覆盖ems选项。 

android:maxLength                           限制显示的文本长度,超出部分不显示。 

android:lines                                         设置文本的行数,设置两行就显示两行,即使第二行没有数据。 

android:maxLines                             设置文本的最大显示行数,与width或者layout_width结合使用,超出部分自动换行,超出行数将不显示。 

android:minLines                             设置文本的最小行数,与lines类似。 

android:lineSpacingExtra                设置行间距。 

android:lineSpacingMultiplier         设置行间距的倍数。如”1.2” 

android:numeric                                如果被设置,该TextView有一个数字输入法。此处无用,设置后唯一效果是TextView有点击效果,此属性在EdtiView将详细说明。 

android:password以小点”.”             显示文本 

android:phoneNumber                     设置为电话号码的输入方式。 

android:privateImeOptions              设置输入法选项,此处无用,在EditText将进一步讨论。 

android:scrollHorizontally                设置文本超出TextView的宽度的情况下,是否出现横拉条。 

android:selectAllOnFocus               如果文本是可选择的,让他获取焦点而不是将光标移动为文本的开始位置或者末尾位置。TextView中设置后无效果。 

android:shadowColor                       指定文本阴影的颜色,需要与shadowRadius一起使用。 

android:shadowDx                            设置阴影横向坐标开始位置。 

android:shadowDy                            设置阴影纵向坐标开始位置。 

android:shadowRadius                   设置阴影的半径。设置为0.1就变成字体的颜色了,一般设置为3.0的效果比较好。 

android:singleLine                            设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。如android:text="test_ singleLine "     

android:singleLine="true" android:layout_width="20dp"将只显示“t…”。如果不设置singleLine或者设置为false,文本将自动换行 

android:text                                          设置显示文本. 

android:textAppearance                    设置文字外观。如“?android:attr/textAppearanceLargeInverse”这里引用的是系统自带的一个外观,?表示系统是否有这种外观,否则使用默 认的外观。可设置的值

android:textColor                               设置文本颜色 

android:textColorHighlight               被选中文字的底色,默认为蓝色 

android:textColorHint                        设置提示信息文字的颜色,默认为灰色。与hint一起使用。 

android:textColorLink                       文字链接的颜色. 

android:textScaleX                            设置文字之间间隔,默认为1.0f。 

android:textSize                                 设置文字大小,推荐度量单位”sp”,如”15sp” 

android:textStyle                                设置字形[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开 

android:typeface                                设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3] 

android:height                                   设置文本区域的高度,支持度量单位:px(像素)/dp/sp/in/mm(毫米) 

android:maxHeight                           设置文本区域的最大高度 

android:minHeight                            设置文本区域的最小高度 

android:width                                     设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与layout_width的区别看这里。 

android:maxWidth                             设置文本区域的最大宽度 

android:minWidth                             设置文本区域的最小宽度

经常使用的我就用红色来标注。

在实战项目中,经常用到就是

Android UI之TextView使用

      就是登录页面等文本中间有颜色不相同的,或者文本多处颜色不同样色不一样。

      图上思路-这时候我们可以2个TextView,但是如果一旦需求复杂就弄n个TextView这样很不现实,我们可以使用富文本span.这里不具体展开。

总之,TextView项目本质就是显示文字+点击事件。

各位有什么还可以补充可以来补充~

Android UI之TextView使用