今天学习了一下TextView的属性,参考了资料,总结了这些。在Android中有些控件直接或间接的继承了TextView,继承了它,TextView有的方法,它就可以使用。

一、TextView常用属性如下:

android:text                设置文本内容
android:textSize         设置文字大小,推荐度量单位sp,如“18sp”
android:textColor       设置文本颜色 
android:gravity   设置文本在TextView这个控件中的重心位置,如设置成“center”,文本将居中显示 
android:singleLine   设置单行显示
android:ellipsize   设置当文字过长时,该控件该如何显示。与android:singleLine一起使用时效果才显示的出来,有如下值可以设置:”start”— 省略号显示在开头;”end”—  省略号显示在结尾;”middle”— 省略号显示在中间; ”marquee” — 以跑马灯的方式显示(动画横向移动) ;"none" --- 超出的文字将不显示

二、TextView其他属性:

android:textColorHint        设置提示信息文字的颜色,与hint属性一起使用 ;设置了hint属性的文字颜色默认为灰色
android:hint 当文本为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。此属性在EditView中使用,但是这里也可以用。
android:textColorLink           文字链接的颜色
android:autoLink 设置当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all) ,设置多个时,用'|'分隔
android:linksClickable 设置链接是否可以被点击,前提是设置了autoLink这个属性

android:textStyle 设置字形 [bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开 
android:password 以小数点".”显示文本,起到隐藏密码的作用,在EditText控件中使用较多,这里也可以使用  
android:inputType 设置文本的类型,用于帮助输入法显示合适的键盘类型。在EditView中再详细说明,这里无效果 
android:editable 设置是否可编辑 
android:drawableBottom 在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者
android:drawableLeft 在text的左边输出一个drawable,如图片 
android:drawableRight 在text的右边输出一个drawable 
android:drawableTop 在text的正上方输出一个drawable
android:drawablePadding 设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用没有效果。 
android:digits         设置允许输入哪些字符。如“0123456789.+-*/% ” 

android:textAllCaps 设置文本中的字母是否大写显示

设置文本的阴影:

android:shadowColor 指定文本阴影的颜色,需要与shadowRadius属性一起使用。 
android:shadowDx 设置阴影横向偏移量。 
android:shadowDy 设置阴影纵向偏移量。
android:shadowRadius 设置阴影的半径。设置为0.1就变成字体的颜色了,一般设置为3.0的效果比较好。

使用以上四个属性可以做出好看的文本图片,其他阴影效果见   http://blog.csdn.net/hewence1/article/details/39993415

                                                                
Android:TextView属性_第1张图片

TextView的其他属性见:  http://blog.csdn.net/doris_d/article/details/51364408


三、用TextView实现跑马灯的效果

1)如果是单个TextView在XML文件中使用一下五个属性即可

 android:singleLine="true"  // 单行显示        android:focusable="true"// 让文本处于focus状态        android:focusableInTouchMode="true"  // 可以通过touch来获得focus        android:ellipsize="marquee"     // 当文字过长时,设置marquee让文本以跑马灯的形式显示        android:marqueeRepeatLimit="marquee_forever"// 让文字一直循环下去
2) 但是多个TextView都要实现跑马灯效果,这时候仅仅这么设置只有第一个有效果,其他没有效果。由于默认的跑马灯效果是需要TextView的属性isFocused为true的时候才会跑动的,而默认情况下,只有一个TextView处于focused状态,解决方法就是让所有需要实现跑马灯效果的TextView都处于focused状态,因此要继承TextView类,于是新建一个MyTextView类,调用三个构造方法,并重写isFocused()方法,该方法返回true。

public class MyTextView extends TextView {public MyTextView(Context context) {super(context);}public MyTextView(Context context, AttributeSet attrs) {super(context, attrs);}public MyTextView(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);}@Overridepublic boolean isFocused() {return true;}}
    

这样就可以让多个文本都实现跑马灯效果


更多相关文章

  1. EditText的常用属性和实例
  2. TextView常用属性
  3. [置顶] 我的Android进阶之旅------>Android 众多的布局属性详解
  4. Android之系统自带的文字外观设置及实际显示效果图
  5. Android RelativeLayout 属性
  6. android layout属性介绍
  7. android layout,xml属性介绍
  8. android布局文件中各属性所代表的意义
  9. Android 控件布局常用属性

随机推荐

  1. android第一天:搭建基础环境
  2. Android(安卓)studio里Toast,menu的用法
  3. android4.0去掉锁屏和休眠 Power键按钮
  4. android的日期格式化 android.text.forma
  5. Android::整理基础之—— startActivityFor
  6. Android关于获取时间的记录(小结)
  7. Android源码中的单例模式
  8. android传感器sensor
  9. 【winows7+android-ndk-r9+Cygwin 】coco
  10. 调用Android系统“应用程序信息(Applicati