TextView整理
来源:互联网 发布:合肥组装电脑淘宝 编辑:程序博客网 时间:2024/06/08 06:21
TextView中比较重要的属性
android:textIsSelectable="true"
- 设置该属性后,长按TextView会弹出
选择复制
的菜单,用户可以针对文字内容进行选择复制的操作 - 此状态下TextView是抢夺焦点的(
android:focusable="true"
),当其他控件需要焦点时,需要处理焦点抢夺问题
- 设置该属性后,长按TextView会弹出
android:autoLink="email"
- 该属性有多个值可以进行设置:
none(default)
,web
,email
,phone
,map
,all
; - TextView设置该属性后,点击TextView将会弹出相关平台的菜单,例如:当TextView的
autoLink
设置为email
时,TextView中的文字如果包含邮箱格式的文本,那么该部分文本颜色会发生改变(不同系统版本下的链接颜色不同),点击后会弹出与发送邮件相关的菜单,其他的值以此类推 - 当需要设置多个类型时,使用
|
分隔开。
- 该属性有多个值可以进行设置:
android:drawableTop="@mipmap/ic_launcher"
,android:drawableTop="@mipmap/ic_launcher"
,android:drawableTop="@mipmap/ic_launcher"
,android:drawableTop="@mipmap/ic_launcher"
- 该属性的作用是围绕TextView的上下左右分别放置图片
- 注意:
- 不能针对设置的图片进行大小设置;
- 图片只会在其所在方位居中显示;
- TextView的padding作用在图片之外;
- TextView的高度或宽度为wrap_content时,其高度将是文字和图片中较大的那一个;
- gravity只对文字起作用,对图片不起作用;
- 必要的时候可以使用ImageView和TextView组合来实现类似的效果,但是性能肯定不如以前
android:drawableStart="@mipmap/ic_launcher"
,android:drawableEnd="@mipmap/ic_launcher"
- 该属性是在API14出现的,但是真正生效是在API17中
- 其作用在默认情况下和
android:drawableLeft
,android:drawableRight
相同 android:drawableLeft
和android:drawableStart
的区别:- 说到它们的区别,就不得不说一个概念:RTL语言(Right To Left)和LTR语言(Left To Right),他们表示的是文字的起始输入方向,世界上有一些国家的书写习惯是从右到左的,比如阿拉伯语,从Android4.1开始支持双向文本的输入和显示
- 设置支持RTL:在manifest中的Application元素加入
android:supportsRtl="true"
这个属性.也可以通过android:textDirection
属性设置文字的方向 android:drawableStart
该属性会根据输入方向自动调整图片的放置方向,android:drawableLeft
则没有这样的效果
android:fontFamily="cursive"
- 其作用是引用系统的内建字体,对应的方法
setTypeface(Typeface)
- 其作用是引用系统的内建字体,对应的方法
android:typeface="monospace"
- 其作用表面上看起来和
android:fontFamily
相同,都可以引用内建字体,但是引用的字体是不同的,对应的方法setTypeface(Typeface)
- 同时定义两者时,会以
android:fontFamily
为准 自定义字体(不建议使用过多的自定义字体,因为字体存储在assets目录下,该目录中的所有内容在打包时是不做任何处理的,也就是说,使用过多字体时,会导致apk包过大)
// 自定义字体custom = new TextView(this);//xx.ttf 存储在 assets/fonts/typeface = Typeface.createFromAsset(getAssets(),"fonts/xx.ttf");custom.setTypeface(typeface);
- 其作用表面上看起来和
android:lineSpacingExtra="10dp"
- 设置文字行间距
android:shadowColor="@color/colorPrimary"
,android:shadowDx="1.2"
,android:shadowDy="1.2"
,android:shadowRadius="5"
- 这几条属性通常一起使用,用于设置文字的阴影,使用极少
android:textAllCaps="true"
- 设置所有字母为大写
android:textStyle="italic"
- 设置字体样式(默认是正常样式,粗体,斜体)
android:textAppearance="?android:attr/textAppearanceLarge"
- 设置字体外观,这个属性比
android:textStyle
的功能更强,可以在styles中定义字体的样式,使用该属性来进行引用
- 设置字体外观,这个属性比
android:ellipsize="end"
- 设置行字的省略方式,有四个值可以选择
start
,middle
,end
,marquee
;前三个分别代表省略号显示的位置,设置marquee
配合其他属性可以实现文字滚动的效果 文字滚动效果的实现(又称为跑马灯效果)
<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:singleLine="true" android:text="@string/ellipsize"/>
- 注意事项:当实现跑马灯效果时,需要注意焦点抢夺问题,当焦点被抢夺时,文字不会滚动,例如:
android:textIsSelectable="true"
该属性就会抢夺焦点
- 设置行字的省略方式,有四个值可以选择
0 0
- TextView整理
- 闲时整理(4)--圆形TextView
- 开发中的TextView技巧点整理
- Android util 整理篇(二)对TextView中文字体加粗
- TextView
- textView
- TextView
- TextView
- TextView
- textview
- TextView
- TextView
- TextView
- TextView
- TextView
- TextView
- TextView
- TextView
- 数据库的设计范式
- Android 开发笔记(准备工作)
- UVA100
- 2016"百度之星" - 资格赛(Astar Round1)Problem A 线段树区间查询
- Android学习笔记十五:wifi连接,获取名字,IP地址
- TextView整理
- MSSQL之六 数据库设计
- 异常处理注意点
- crawler4j源码解析
- Linux 安装svn
- Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be
- 第12周-阅读程序(1)
- i++与++i
- 光照模型