关于TextView

TextView是Android开发中最最常见的控件之一,在API记录的属性有很多,但实际开发中,有很多很少涉及但是却非常有用的属性,值得去尝试,所以记录下来,既可以给大家提供参考,同时自己需要时候也方便查找.

结构

TextView继承自View

public class TextView extends View implements OnPreDrawListener

直接子类

Button, CheckedTextView, Chronometer, DigitalClock, EditText

间接子类

AutoCompleteTextView, CheckBox, CompoundButton, ExtractEditText,MultiAutoCompleteTextView, RadioButton, ToggleButton

属性

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

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

android:bufferType 指定getText()方式取得的文本类别。选项editable类似于StringBuilder可追加字符,也就是说getText后可调用append方法设置文本内容spannable 则可在给定的字符区域使用样式;

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:focusable="true" android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever"三个属性搭配使用

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,文本将自动换行,但是目前不推荐,单行可以直接使用 lines=1;

android:text 设置显示文本.

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

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] 可以设置一个或多个,用“|”隔开,但是中文加粗就需要在代码中获取到当前TextView在进行设置: TextView tv = (TextView)findViewById(R.id.tv); TextPaint tp = tv.getPaint(); tp.setFakeBoldText(true);

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中textview记录日志,Android中TextView属性全纪录相关推荐

  1. Android中的基础控件TextView、Button、ImageView、EditText、ProgressBar

    文章目录 1 Android中的基础控件 1.1 控件的通用属性 2 TextView 2.1 TextView的继承关系 2.2 TextView的常用属性 3 EditText 3.1 常用属性 ...

  2. android 的a标签,Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)...

    在5.2.1节和5.2.2节介绍了标签以及TextView自动识别的特殊文本(网址.电话号.Email等),这些都可以通过单击来触发不同的动作.虽然这些单击动作已经可以满足大多数需要了,但如果读者想在 ...

  3. android动态添加圆,Android开发中TextView 实现右上角跟随文本动态追加圆形红点

    在一个比较坑的需求里,一段文字右上角需要追加一个圆形红点.最右侧有个金额,红点动态随着文字移动,然后各种摆布局,一下午坑死我了.后来果断放弃.然后就想试试直接自定义view来实现这个需求. 最坑的就是 ...

  4. android textview 添加图片大小,Android_Android中使用TextView实现图文混排的方法,向TextView或EditText中添加图像比 - phpStudy...

    Android中使用TextView实现图文混排的方法 向TextView或EditText中添加图像比直接添加文本复杂一点点,需要用到标签. 只有一个src属性,该属性原则上应该指向一个图像地址或可 ...

  5. android 设置字体位置,android中textview控件中的文字的位置是如何调整的

    有2种方法可以设置TextView文字居中: 一:在xml文件设置:android:gravity="center" 二:在程序中设置:m_TxtTitle.setGravity( ...

  6. android 布局: LinearLayout如何使TextView中的内容居中显示

    在LinearLayout布局中: <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android&quo ...

  7. android textview adapter,Android在FragmentPagerAdapter中的Fragment中设置TextView文本

    这个让我疯了.基本上,我想创建一个ViewPager并为其添加一些片段.然后,我想做的就是在Fragment的TextViews中设置一个值.我可以添加Fragments,并且它们会附加,但是当我在第 ...

  8. android textview svg,Android中使用SVG与WebFont矢量图标

    一.参考文献 二.html使用方法 1.下载字体 网上百度自己要使用的字体,一般下载的是ttf格式,需要4种(或5)格式,其他的格式可以通过在线工具基于ttf转换 web-fontmin(这个在线转换 ...

  9. android 字体跑马灯,Android中使用TextView实现文字跑马灯效果

    通常情况下我们想实现文字的走马灯效果需要在xml文件中这样设置 android:layout_width="wrap_content" android:layout_height= ...

最新文章

  1. 玩转飞书日历,体验高效办公!
  2. XenApp/XenDesktop 7.11中对于视频、图片、文字的优化的说明
  3. Windows批处理(cmd/bat)常用命令
  4. 阿里云可以外链mysql_案例详细说明阿里云下设置MySQL远程连接步骤
  5. POJ3450 Corporate Identity —— 后缀数组 最长公共子序列
  6. 请求失败或服务未及时响应 有关详细信息_「干货」从零开始的微服务搭建之路...
  7. Confluence 6 访问你的宏正文(body)
  8. 利用Adorner制作用于图像裁切的选择框
  9. Linux爆本地提权漏洞 请立即更新udev程序
  10. 人工智能—产生式系统(专家系统)
  11. Origin8 使用教程
  12. OpenCV 4 中文文档(更新mat部分)
  13. ubuntu 18.04安装pycharm及编译环境配置
  14. JAVA修炼秘籍第三章《绝地反击》
  15. CSDN博客专栏申请方法
  16. 模拟实现ATM系统——Java
  17. 人类创造的工具是不是人工智能?
  18. ora.eons offline
  19. 【Numpy】选择特定行列
  20. 【京东云】通过SDK创建多个弹性IP

热门文章

  1. luffcc项目-08-课程详情页、CKEditor富文本编辑器、课程详情页面、后台接口
  2. VCS dump fsdb 波形
  3. 产品经理的一些常用术语
  4. Linux MediaPipe C++版手势识别环境搭建与编译
  5. CapsuleRRT: Relationships-aware Regression Tracking via Capsules
  6. 中国银联(霸面—面试经验)
  7. mysql可以安多个吗_全屋插座安多高?5个数字全搞定
  8. 软件算法一些学习总结
  9. 百度网盘配合插件脚本使用IDM下载设置
  10. CentOS安装 xmms