部分android控件属性总结

来源:互联网 发布:明教知乎 编辑:程序博客网 时间:2024/05/21 19:28
    做安卓应用开发,不得不用xml代码写界面布局,各种控件各种属性太多太多了,有的属性之前还根本没有用过,今天终于花点时间,在网上淘了淘,加上平时工作中用的,把一些属性写下来,下次用的时候就可以翻一翻了。

TextView及其子类(如Button,EditText,CheckedTextView等)属性,当然很多控件有下面部分属性:

android:text设置显示文本. 

android:maxLength限制显示的文本长度(中文英文数字均占1个长度),超出部分不显示。 
android:lines设置文本的行数,设置两行就显示两行,即使第二行没有数据。 
android:maxLines设置文本的最大显示行数,超出部分自动换行,超出行数将不显示。 
android:minLines设置文本的最小行数,与lines有些类似,但是设置为2行即可以显示2行及以上。 

android:cursorVisible设定光标为显示/隐藏,默认显示。 
android:digits设置允许输入哪些字符。如“1234567890.+-*/% ()” 

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

android:autoText如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。 
android:bufferType指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符,也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式,参见这里1、这里2。 
android:capitalize设置英文字母大写类型。此处无效果,需要弹出输入法才能看得到,参见EditView此属性说明。 
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” ——以跑马灯的方式显示(动画横向移动) ,只在单行有效,即设置singleLine="true"
android:freezesText设置保存文本的内容以及光标的位置。 
android:gravity设置文本位置,如设置成“center”,文本将居中显示。 
android:hintText为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。此属性在 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:lineSpacingExtra设置行间距。 
android:lineSpacingMultiplier设置行间距的倍数。如”1.2” 
android:numeric如果被设置,该TextView有一个数字输入法。此处无用,设置后唯一效果是TextView有点击效果,此属性在EdtiView将详细说明。 
android:password以小点”.”显示文本 
android:phoneNumber设置为电话号码的输入方式。 
android:privateImeOptions设置输入法选项,此处无用,在EditText将进一步讨论。 
android:scrollHorizontally设置文本超出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,文本将自动换行 
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] 可以设置一个或多个,用“|”隔开 
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设置文本区域的最小宽度 
Activity属性: 
android:allowTaskReparenting 是否允许activity更换从属的任务,比如从短信息任务 切换到浏览器任务。 
android:alwaysRetainTaskState 是否保留状态不变, 比如切换回home, 再从新打开, activity处于最后的状态 
android:clearTaskOnLanunch 比如 A 是 activity, B是被A触发的 activity, 然后返回Home, 从新启动 A, 是否显示 B 
android:configChanges 当配置list发生修改时,是否调用 onConfigurationChanged() 方法 比如 "locale|navigation|orientation". 
android:enabled activity 是否可以被实例化, 
android:excludeFromRecents 是否可被显示在最近打开的activity列表里 
android:exported 是否允许activity被其它程序调用 
android:finishOnTaskLaunch 是否关闭已打开的activity当用户重新启动这个任务的时候 
android.icon 
android:label 
android:launchMode activity启动方式, "standard" "singleTop" "singleTask" "singleInstance" 
android:multiprocess 允许多进程 
android:name activity的类名, 必须指定 
androidnHistory 是否需要移除这个activity当用户切换到其他屏幕时。 这个属性是 API level 3 中引入的 
android:permission 
android:process 一 个activity运行时所在的进程名,所有程序组件运行在应用程序默认的进程中,这个进程名跟应用程序的包名一致。中的元素process属性能够为所有组件设定一个新的默认值。但是任何组件都可以覆盖这个默认值,允许你将你的程序放在多进程中运行。 如果这个属性被分配的名字以:开头,当这个activity运行时, 一个新的专属于这个程序的进程将会被创建。 如果这个进程名以小写字母开头,这个activity将会运行在全局的进程中,被它的许可所提供。 
android:screenOrientation activity显示的模式, "unspecified" 默认值 "landscape" 风景画模式,宽度比高度大一些 "portrait" 肖像模式, 高度比宽度大。 "user" 用户的设置 "behind" "sensor" "nosensor" 
android:stateNotNeeded 是否 activity被销毁和成功重启并不保存状态 
android:taskAffinity activity的亲属关系, 默认情况同一个应用程序下的activity有相同的关系 
android:theme activity的样式主题, 如果没有设置,则activity的主题样式从属于应用程序, 参见元素的theme属性 
android:windowSoftInputMode activity主窗口与软键盘的交互模式, 自从API level 3 被引入 
"stateUnspecified" 软键盘的状态(是否它是隐藏或可见)没有被指定。系统将选择一个合适的状态或依赖于主题的设置。这个是为了软件盘行为默认的设置,一般有以下8个选择项目:
"stateUnchanged" 软键盘被保持无论它上次是什么状态,是否可见或隐藏,当主窗口出现在前面时。 
"stateHidden" 当用户选择该Activity时,软键盘被隐藏——也就是,当用户确定导航到该Activity时,而不是返回到它由于离开另一个Activity。 
"stateAlwaysHidden" 软键盘总是被隐藏的,当该Activity主窗口获取焦点时。 
"stateVisible" 软键盘是可见的,当那个是正常合适的时(当用户导航到Activity主窗口时)。 
"stateAlwaysVisible" 当用户选择这个Activity时,软键盘是可见的——也就是,也就是,当用户确定导航到该Activity时,而不是返回到它由于离开另一个Activity。 
"adjustUnspecified" 它不被指定是否该Activity主窗口调整大小以便留出软键盘的空间,或是否窗口上的内容得到屏幕上当前的焦点是可见的。系统将自动选择这些模式中一种主要依赖于是否窗口的内容有任何布局视图能够滚动他们的内容。如果有这样的一个视图,这个窗口将调整大小,这样的假设可以使滚动窗口的内容在一个较小的区域中可见的。这个是主窗口默认的行为设置。 
"adjustResize" 该Activity主窗口总是被调整屏幕的大小以便留出软键盘的空间。 

"adjustPan" 该Activity主窗口并不调整屏幕的大小以便留出软键盘的空间。相反,当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分。这个通常是不期望比调整大小,因为用户可能关闭软键盘以便获得与被覆盖内容的交互操作。 

ListView及GridView等属性:

stackFromBottom这只该属性之后你做好的列表就会显示你列表的最下面,值为true和false

android:stackFromBottom="true"            

transciptMode需要用ListView或者其它显示大量Items的控件实时跟踪或者查看信息,并且希望最新的条目可以自动滚动到可视范围内。通过设置的控件transcriptMode属性可以将Android平台的控件(支持ScrollBar)自动滑动到最底部。 android:transcriptMode="alwaysScroll"  

cacheColorHint很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性 android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白位置的时候发现ListItem都变成黑色的了,破坏了整体效果。

如果你只是换背景的颜色的话,可以直接指定android:cacheColorHint为你所要的颜色,如果你是用图片做背景的话,那也只要将android:cacheColorHint指定为透明(#00000000)就可以了

divider作用是每一项之间需要设置一个图片做为间隔,或是去掉item之间的分割线

android:divider="@drawable/list_driver"  其中  @drawable/list_driver 是一个图片资源,如果不想显示分割线则只要设置为android:divider="@drawable/@null" 就可以了

第五fadingEdge属性,上边和下边有黑色的阴影

android:fadingEdge="none" 设置后没有阴影了~

scrollbars隐藏listView的滚动条,android:scrollbars="none"与setVerticalScrollBarEnabled(true);的效果是一样的,不活动的时候隐藏,活动的时候也隐藏

fadeScrollbars  配置ListView布局的时候,设置这个属性为true就可以实现滚动条的自动隐藏和显示。


0 0
原创粉丝点击