资讯专栏INFORMATION COLUMN

Android控件之TextView全解析

jsdt / 1683人阅读

摘要:设置控件中内容的位置,如上表示居中。为文本指定输入法,需要完全限定名完整的包名。在指定的情况下,设置重复滚动的次数,当设置为时表示无限次。限制显示的文本长度,超出部分不显示。

前言

大家好!在前几篇文章里,我们详细介绍了Android中的常用布局,使大家对Android中的页面布局有了一定认识,而对于布局中使用的一些UI控件如ButtonTextView等,有的读者可能还存在一些困惑。在接下来文章中,我们将详细介绍Android开发中经常使用的UI控件,敬请期待!

简介

TextView(文本框),是Android中用于显示文本的一个控件。

常用属性详解

id:为TextView设置一个组件id,根据id,我们可以在Java代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置。

layout_width:控件的宽度,可以写成wrap_contentmatch_parent,前者是宽度自适应(控件中显示的内容多大,控件就多大),而后者宽度会填满该控件所在的父容器;也可以设置成特定的大小,如上200dp。

layout_height:组件的宽度,内容同上。

gravity:设置控件中内容的位置,如上center表示居中。

text:设置显示的文本内容,一般我们是把字符串写到string.xml文件中,然后通过@String/xxx取得对应的字符串内容的,可避免图上黄色警告。

textColor:设置字体颜色,同上,也需通过colors.xml资源来引用。

textStyle:设置字体风格,三个可选值:normal(无效果),bold(加粗),italic(斜体)。

textSize:字体大小,单位用sp

backgroud:控件的背景颜色,填充整个控件,也可以是图片或者drawable资源文件。

实际开发示例 1.带图片的TextView

drawableXxx:可以设置四个方向的图片:drawableTop(上),drawableButtom(下),drawableStart(左),drawableEnd(右) 另外,你也可以使用drawablePadding来设置图片与文字间的间距。

2.带阴影的TextView

shadowColor:设置阴影颜色,需要与shadowRadius一起使用。

shadowRadius:设置阴影的模糊程度。

shadowDx:设置阴影在水平方向的偏移,即水平方向阴影开始的横坐标位置。

shadowDy:设置阴影在竖直方向的偏移,即竖直方向阴影开始的纵坐标位置。

3.带边框的TextView

background="@drawable/bg_text":编写一个ShapeDrawable的资源文件,放在res下的drawable目录下。



    
    
    
    
    
    
属性大全

上面只是简单介绍了TextView中一些常用的使用方法,在TextView中,其属性还有很多。下面详细列举TextViewXML中各种属性,供大家参考查阅

android:text:设置显示文本内容。

android:textColor:设置文本颜色。

android:textSize:设置文字字体大小,单位sp

android:hint: Text为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。

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

android:textStyle:设置字体风格,三个可选值:normal(无效果),bold(加粗),italic(斜体)。

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

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

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

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

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

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

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

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

android:capitalize:设置英文字母大写类型,需要弹出输入法才能看得到。

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

android:drawableXxx:在text的Xxx方向输出一个drawable,如图片。

android:drawablePadding:设置text与drawable(图片)的间隔,与drawableLeftdrawableRightdrawableTopdrawableBottom一起使用,可设置为负数,多带带使用没有效果。

android:ellipsize:设置当文字过长时,该控件该如何显示。有如下值设置:”start”—–省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中间;”marquee” ——以跑马灯的方式显示(动画横向移动) 。

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

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

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

android:inputMethod:为文本指定输入法,需要完全限定名(完整的包名)。

android:inputType:设置文本的类型,用于帮助输入法显示合适的键盘类型。

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:singleLine:设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。

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

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

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

android:lineSpacingExtra:设置行间距。

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

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

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

android:shadowRadius:设置阴影的半径,太小了无效果。

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

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

结语

以上就是Android中最常用的UI控件TextView的介绍,开发示例中只列举了几种最常用的使用方式。在接下来的几篇文章中,还会有其他更加精彩的AndroidUI控件的介绍,敬请期待!

PS:如果还有未看懂的小伙伴,欢迎加入我们的QQ技术交流群:892271582,里面有各种大神回答小伙伴们遇到的问题哦~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/76184.html

相关文章

  • 「码个蛋」2017年200篇精选干货集合

    摘要:让你收获满满码个蛋从年月日推送第篇文章一年过去了已累积推文近篇文章,本文为年度精选,共计篇,按照类别整理便于读者主题阅读。本篇文章是今年的最后一篇技术文章,为了让大家在家也能好好学习,特此花了几个小时整理了这些文章。 showImg(https://segmentfault.com/img/remote/1460000013241596); 让你收获满满! 码个蛋从2017年02月20...

    wangtdgoodluck 评论0 收藏0
  • 自定义View扩展式

    摘要:前言在学习的道路上,有一句跨领域的话就是教永远是最好的学那么我希望通过自己的分享能够更好的帮助到一些需要的人同事我也能够对自己的不足进行反观自定义在开发中,可以说是一件感觉比较高级的事情了,那其实自定义也分为好几种通常来说我们也给他分为三个 前言 在学习的道路上,有一句跨领域的话就是教永远是最好的学!那么我希望通过自己的分享能够更好的帮助到一些需要的人!同事我也能够对自己的不足进行反观...

    nifhlheimr 评论0 收藏0
  • 从LayoutInflater.inflate看View的创建过程

    摘要:将布局文件实例化为其对应的对象。回到第行,这个是最关键的函数调用,正是完成了的创建。第行是对的子标签进行处理,完成子的创建,然后在行,将子添加到中,最后方法会回调的方法,以此完成这个文件中的的创建过程。最后返回该对象,这样就完成了的创建。 从LayoutInflater.inflate看View的创建过程 背景: 在Activity中,我们通过在onCreate方法中调用setCont...

    cc17 评论0 收藏0
  • 安卓自定义控件 - 收藏集 - 掘金

    摘要:对应到开发中,我们通常会最新最全的开源项目合集掘金是由整理并维护的安卓相关开源项目库集合。如果收录的项目有错酷炫的切换动画,打造更好的用户体验掘金毫无疑问,动画效果能提高用户体验。 仿蘑菇街, 蜜芽宝贝, 京东商品详情界面, 与 NestedScroll 滑动 - Android - 掘金上一篇文章中有提到界面中嵌套NestedScrollView与Fragment并用,而Nested...

    1fe1se 评论0 收藏0
  • Android自定义控件

    摘要:自定义之高仿支付宝芝麻信用分仪表盘效果最近写的一个自定义,仿了下支付宝新旧版的芝麻信用分的仪表盘效果。项目需求讨论自定义实现步骤及封装根据实际项目需求出发。来快速实现各种自定义界面的对话框。究其原因,目前只用到了最基础的一部分功能。 自定义 View 之高仿支付宝芝麻信用分仪表盘效果 最近写的一个自定义 View,仿了下支付宝新旧版的芝麻信用分的仪表盘效果。 项目需求讨论 - Andr...

    Tikitoo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<