TextView使用详解

TextView有众多属性和子类,家大业大,人丁兴旺,有必要了解清楚


TextView的出身

java.lang.Object
 ↳ android.view.View
  ↳ android,widget.TextView
TextView
直接子类
Button, CheckedTextView, Chronometer, DigitalClock, EditText, TextClock

间接子类
AutoCompleteTextView, CheckBox, CompoundButton, ExtractEditText, MultiAutoCompleteTextView, RadioButton, Switch, ToggleButton


属性简介
android:autoLink控制是否自动查找网址和电子邮件地址等链接并将其转换为可点击链接android:autoSizeTextType指定自动大小的类型android:autoSizeMaxTextSize自动调整文本大小时的最大文本尺寸 android:autoSizePresetSizes要与autoSizeTextTypeset 一起使用的维度的资源数组 uniformandroid:autoSizeStepGranularity如果autoSizeTextType设置为,请指定自动调整大小步长uniformandroid:autoText  如果设置,则指定此TextView具有文本输入方法并自动更正一些常见的拼写错误android:breakStrategy中断策略(控制段落布局)android:bufferType确定getText()将返回的最小类型android:cursorVisible使光标可见(默认)或不可见android:capitalize如果设置,则指定此TextView具有文本输入方法,并应自动将用户键入的内容大写android:digits如果设置,则指定此TextView具有数字输入方法,并且这些特定字符是它将接受的字符android:drawableRight设置要绘制在文本右侧的drawableandroid:drawableStart    设置要绘制到文本开头的drawableandroid:drawableTint色彩适用于化合物(左,上等)可绘制的android:drawableTintMode混合模式用于施加化合物(左,顶等)可绘制色调。 android:editable如果设置,则指定此TextView具有输入方法android:editorExtras 引用<input-extras> 包含要提供给输入方法的附加数据的 XML资源,该输入方法对输入方法的实现是私有的android:elegantTextHeight优雅的文本高度,尤其适用于压缩较少的复杂脚本文本android:ellipsize如果设置,则导致比视图宽的单词被椭圆化而不是在中间断开android:ems使TextView宽度设为若干字符的宽度   layout_width为match_parent时失效android:fallbackLineSpacing是否尊重用于显示文本的后备字体的上升和下降android:firstBaselineToTopHeight从TextView顶部到第一个文本基线的距离android:fontFamily文本系列(由字符串命名或作为字体资源引用) android:fontFeatureSettings字体功能设置android:freezesText如果设置,除了元数据(如当前光标位置)之外,文本视图还将在其冻结冰柱内包含其当前完整文本android:gravity指定当文本小于视图时,如何通过视图的x轴和/或y轴对齐文本android:height设置TextView的高度android:hint提示文本为空时显示的文本android:hyphenationFrequency自动连字的频率android:imeActionId提供 输入法连接到文本视图时使用的值EditorInfo.actionIdandroid:imeActionLabel提供 输入法连接到文本视图时使用的值EditorInfo.actionLabelandroid:imeOptions您可以在与编辑器关联的IME中启用的其他功能,以改善与应用程序的集成android:includeFontPadding为上升器和下降器留出足够的空间,而不是严格使用字体上升和下降android:inputMethod如果设置,则指定此TextView应使用指定的输入方法(由完全限定的类名指定)android:inputType放置在文本字段中的数据类型,用于帮助输入方法决定如何让用户输入文本android:justificationMode理由模式android:lastBaselineToBottomHeight从TextView底部到最后一个文本基线的距离android:letterSpacing文字字母间距android:lineHeight文本行之间的显式高度android:lineSpacingExtra文本行之间的额外间距android:lineSpacingMultiplier文本行之间的额外间距,作为乘数android:lines设置TextView的行数android:linksClickable如果设置为false,即使autoLink导致找到链接,也不会将移动方法设置为链接移动方法android:marqueeRepeatLimit重复选框动画的次数android:maxHeight使TextView最多只有这么多像素高。 android:maxLength设置输入过滤器以将文本长度约束为指定的数字。 android:maxLines使TextView最多这么多行android:numeric如果设置,则指定此TextView具有数字输入方法android:password字段的字符是否显示为密码样式android:phoneNumber如果设置,则指定此TextView具有电话号码输入方法android:privateImeOptions 附加内容类型描述,提供给附加到文本视图的输入方法,该输入方法对输入方法的实现是私有的android:scrollHorizontally是否允许文本比视图宽(因此可以水平滚动)android:selectAllOnFocus如果文本是可选的,请在视图获得焦点时全部选择android:shadowColor在文本下方放置模糊的文本阴影,使用指定的颜色绘制android:shadowDx文本阴影的水平偏移android:shadowRadius模糊文本阴影的半径android:singleLine将文本约束为单个水平滚动线,而不是让它换行到多行,并在按Enter键时前进焦点而不是插入换行符android:text要显示的文本android:textAllCaps在全部大写中显示文本android:textAppearance基本文本颜色,字体,大小和样式android:textColor文字颜色android:textColorHighlight文本选择的颜色突出显示android:textColorHint提示文字的颜色android:textColorLink链接的文字颜色android:textIsSelectable表示可以选择不可编辑文本的内容android:textScaleX设置文本的水平缩放系数android:textSize文字大小android:textStyle文本的样式(正常,粗体,斜体,粗体|斜体)android:typeface文本的字体(普通,无衬线,衬线,等宽字体)android:width设置TextView的宽度

TextView的跑马灯效果
android:ellipsize="marquee"  跑马灯效果android:focusable="true"  右焦点的android:focusableInTouchMode="true"  无滚动球设备的必要条件android:marqueeRepeatLimit="marquee_forever"  设置重复效果android:singleLine="true"  单行

可以通过设置elipsize来控制跑马灯效果的开启和关闭


一些属性和用法
  • android:ellipsize
    内容过长时,可以加省略号
    android:ellipsize = “none”   默认值,没有省略号
    android:ellipsize = “end”     省略号在结尾
    android:ellipsize = “start”    省略号在开头
    android:ellipsize = “middle”   省略号在中间
    android:ellipsize = “marquee”  跑马灯
    限制行数,否则省略号不起作用
  • android:autoLink 或调用 setAutoLinkMask(int )方法
    文本字符串包含有网址、邮箱、电话号码或地址时,设置是否可以点击进行相应的跳转到对应的页面,以及进行哪些匹配
    其中 " | " 表示或
内容 数值 描述
none 0x00 均不匹配 (default)
web 0x01 匹配网址链接
email 0x02 匹配email地址
phone 0x04 匹配电话号码
map 0x08 匹配地图地址
all 0x0f 匹配所有(equivalent to web | email | phone | map)

  • TextView支持HTML格式显示
String html_string = "风吹树林树林唯有弃掉
其实过得很快乐"
;text_view.setText(Html.fromHtml(html_string));
  • 支持参数
strings.xml字符串中带参数<string name="text">年仅%1$d的中心是个%2$s</string> text_view_5.setText(getString(R.string.text, "沙雕",20));年仅20的中心是个沙雕//%1$d      1表示第一个参数,d表示为数字//%2$s      2表示第二个参数,s表示为字符串
  • android:drawableTop表示是textView上部分显示图片
    以此类推 很多图片加文字的组合并非是ImageView + TextView 而仅仅使用了TextView实现的

2018/8/13

更多相关文章

  1. 浅谈Java中Collections.sort对List排序的两种方法
  2. Python list sort方法的具体使用
  3. python list.sort()根据多个关键字排序的方法实现
  4. ArcGIS for Android(安卓)10.2.5
  5. Android(安卓)Timer类的使用
  6. 【063】◀▶ Android(安卓)(I) - 控件和布局
  7. Android(安卓)Loaders
  8. android默认输入法设置
  9. Android(安卓)StateMachine记录

随机推荐

  1. 2010.10.26———Android 01
  2. android 8.1 移除hifi_sensor feature
  3. android:process=":remote"
  4. Android指定调用系统自带浏览器打开链接
  5. Android帧布局-实现渐变效果
  6. 搭建Android开发环境01——Java
  7. Android自定义ProgressBar
  8. 查看android路由表
  9. Android修改PackageInstaller自动安装指
  10. Android SDK更新失败对策