TextView的XML属性说明全析 ---Android基础篇


TextView的XML属性说明全析


文 | 莫若吻     


(注:以下内容是根据Android API开发文档翻译总结得出的。)

1.TextView类关系结构

如图:

TextView的XML属性说明全析 ---Android基础篇_第1张图片


2.TextView 的XML 属性

  • 属性                        ---->     相应方法                      ---->    作用详解  
  • android:autoLink     ---->    setAutoLinkMask(int)    ---->  可选值:none/web/email/phone/map/all设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。 (简述:文本可被点击)
  • android:autoText    ---->    setKeyListener(KeyListener)    ---->  如果设置,指定该TextView文本输入法,并自动纠正一些常见的拼写错误。(只在显示输入法并输入的时候起作用。)
  • android:bufferType    ---->   setText(CharSequence,TextView.BufferType)     ---->  指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符,也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式。(简述:设置文本类别,StringBuilder)
  • android:capitalize    ---->   setKeyListener(KeyListener)   ---->  指定该TextView文本输入法。(设置英文字母大写类型,弹出输入法时才能看到效果。)
  • android:cursorVisible    ---->   setCursorVisible(boolean)   ---->  设置光标 显示/隐藏,默认显示。
  • android:digits    ---->   setKeyListener(KeyListener)   ---->  设置允许输入哪些字符。eg:“1234567890.+-*/%” 
  • android:drawableBottom    ---->  setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable)    ----> text文本下方绘制一个drawable,eg:图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者。
  • android:drawableLeft    ---->    setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable)   ---->  text文本左侧绘制一个drawable。
  • android:drawablePadding    ---->   setCompoundDrawablePadding(int)    ---->  设置textdrawable(图片)的间隔,与drawableLeftdrawableRightdrawableTopdrawableBottom一起使用,可设置为负数,单独使用没有效果。
  • android:drawableRight  ---->    setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable)    ---->  text的右边输出一个drawable,如图片。
  • android:drawableTop    ---->    setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable)   ---->   text的正上方输出一个drawable,如图片。
  • android:editable    ----> (无)   ---->  如果设置,指定该TextView输入法。
  • android:editorExtras    ---->   setInputExtras(int)    ---->  引用一个< input-extras > XML资源包含额外的数据提供一个输入方法,这是私人的实现输入法。(设置文本的额外的输入数据。)
  • android:ellipsize    ---->   setEllipsize(TextUtils.TruncateAt)   ---->  设置当文字过长时,该控件该如何显示。eg:”start”—–省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中间;”marquee” ——以跑马灯的方式显示(动画横向移动)
  • android:marqueeRepeatLimit    ---->   setMarqueeRepeatLimit(int)    ---->  在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为 marquee_forever时表示无限次。
  • android:ems    ---->   setEms(int)    ---->   eg:android:ems="5"   设置TextView的宽度为5个字符的宽度。当设置该属性后,控件显示的长度就为5个字符的长度,超出的部分将不显示。
  • android:freezesText    ---->    setFreezesText(boolean)   ---->   设置保存文本的内容以及光标的位置。
  • android:gravity    ---->   setGravity(int)    ---->  设置文本位置。eg:android:gravity="center",文本将居中显示。
  • android:height    ---->    setHeight(int)    ---->  设置文本区域的高度,支持度量单位:px/dp/sp/in/mm
  • 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动作与编辑框相关的动作。eg:actionDone   右下角将显示一个“完成”,而不设置默认是一个回车符号。一般应用在EditView中,此处无用。
  • android:includeFontPadding    ---->    setIncludeFontPadding(boolean)    ---->  设置文本是否包含顶部和底部额外空白,默认为true。
  • android:inputMethod    ---->    setKeyListener(KeyListener)    ---->  为文本指定输入法,需要完全限定名(完整的包名)。eg:com.google.android.inputmethod.pinyin(只是示例,此包名实际不一定能用)。
  • android:inputType    ---->    setRawInputType(int)    ---->  设置文本的类型,用于帮助输入法显示合适的键盘类型。一般应用在EditView中,此处无用。
  • android:lineSpacingExtra    ---->    setLineSpacing(float,float)    ---->  设置行间距。
  • android:lineSpacingMultiplier     ---->    setLineSpacing(float,float)    ---->  设置行间距的倍数。eg:”1.5”
  • android:lines    ---->    setLines(int)    ----> 设置文本的行数。设置两行就显示两行,即使第二行没有数据。
  • android:linksClickable    ---->    setLinksClickable(boolean)    ---->  设置链接是否点击连接。不受autoLink设置的影响。
  • android:maxEms    ---->    setMaxEms(int)   ---->  设置TextView的宽度为最长为N个字符的宽度。与ems同时使用时覆盖ems选项。
  • android:maxHeight    ---->    setMaxHeight(int)    ---->  设置文本区域的最大高度。
  • android:maxLength    ---->    setFilters(InputFilter)    ----> 限制显示的文本长度,超出部分不显示。
  • android:maxLines    ---->    setMaxLines(int)    ---->  设置文本的最大显示行数,与width或者layout_width结合使用,超出部分自动换行,超出行数将不显示。
  • android:maxWidth    ---->    setMaxWidth(int)   ---->   设置文本区域的最大宽度。
  • android:minEms    ---->    setMinEms(int)    ---->  设置TextView的宽度为最短为N个字符的宽度。与ems同时使用时覆盖ems选项。
  • android:minHeight    ---->    setMinHeight(int)    ---->  设置文本区域的最小高度。
  • android:minLines    ---->    setMinLines(int)    ---->  设置文本的最小行数,与lines类似。
  • android:minWidth    ---->    setMinWidth(int)     ---->  设置文本区域的最小宽度。
  • android:numeric    ---->    setKeyListener(KeyListener)    ---->  如果设置,指定该TextView数字输入法。
  • android:password    ---->    setTransformationMethod(TransformationMethod)    ----> 以 点”.” 的方式显示文本
  • android:phoneNumber    ---->    setKeyListener(KeyListener)    ---->  设置为电话号码的显示方式。
  • android:privateImeOptions     ---->    setPrivateImeOptions(String)    ---->  设置输入法选项。(添加内容类型描述提供输入方法附加到文本视图,这是私人的实现输入法。
  • android:scrollHorizontally    ---->    setHorizontallyScrolling(boolean)     ---->  设置文本超出TextView的宽度的情况下,是否出现横向滚动条。
  • android:selectAllOnFocus    ---->    setSelectAllOnFocus(boolean)    ---->  如果文本是可选择的,让他获取焦点而不是将光标移动到文本的开始位置或者末尾位置。 TextView设置后无效果。
  • 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)    ---->  设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。如果不设置singleLine或者设置为false,文本将自动换行。
  • android:text    ---->    setText(CharSequence)    ---->  设置显示文本。
  • android:textColor    ---->    setTextColor(ColorStateList)    ---->  设置文本颜色。
  • android:textAppearance    ----> (无) ---->  设置文字外观。eg: “?android:attr/textAppearanceLargeInverse”这引用系统自带的一个外观,?表示系统是否有这种外观,否则使用默认的外观。
  • android:textColorHighlight    ---->    setHighlightColor(int)    ---->  设置被选中文字的底色,默认为蓝色
  • android:textColorHint    ---->    setHintTextColor(int)    ---->  设置提示信息文字的颜色,默认为灰色。与hint一起使用。
  • android:textColorLink    ---->    setLinkTextColor(int)    ---->  设置文字链接的颜色。
  • android:textScaleX    ---->    setTextScaleX(float)    ---->  设置文字之间间隔,默认为1.0f。
  • android:textSize    ---->    setTextSize(float)    ---->  设置文字大小,推荐使用单位”sp”。
  • 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)    ---->  设置文本区域的宽度,支持度量单位:px/dp/sp/in/mm。
(注:widthlayout_width 是有区别的。一个组件可以只有Layout _width ,layout_height。但却不能只有heigh ,width,而没有Layout _width ,layout_height,因为那样的组件会看不到。如果你要使用heigh ,width的话,就要先设置Layout _width ,layout_height,把heigh ,width用来作为组件的微调使用。



你可能感兴趣的:(而,_,Android,Android,World)