Android系统通用属性
- 格式:doc
- 大小:32.00 KB
- 文档页数:2
Android布局属性大全布局:AbsoluteLayout(绝对布局):xmlns:android="/apk/res/android"style="@..."android:clipChildren="true|false"android:clipToPadding="true|false"android:layoutAnimation="@---"android:animationCache="true|false"android:persistentDrawingCache="none|animation|scrolling|all":持续高速缓存绘图android:alwaysDrawnWithCache="true|false"android:andStatesFromChildre="true|false"android:descendantFocusability="beforeDescendants|afterDescendants|bl ocksDescendants":后裔可聚焦android:id="@+id/absoluteLayout"android:tag="@---"android:android:scrollX="---"android:android:scrollY="---"android:background="@---"android:padding="----"android:paddingLeft="----"android:paddingTop="----"android:paddingRight="----"android:paddingBotton="---"android:focusable="true|false"android:focusableInTouchMode="true|false"android:visibility="visible|invisible|gone"android:fitsSystemWindows="true|false":适合系统窗口android:scrollbars="none|horizontal|vertical"android:scrollbarStyle="insideOverlay(内覆盖)|insideInset(内插图)|outsideOverlay(外覆盖)|outsideInset(外插图)"android:isScrollContainer="true|false":是一个滚动集合android:fadeScrollbars="true|false":褪色的滚动条android:scrollbarFadeDuration="---":卷轴淡出android:scrollDefaultDelayBeforeFade="---":滚动前默认延迟android:scrollbarSize="---"android:scrollbarThumbHorizontal="@----":拇指水平滚动条android:scrollbarThumbVertical="@----":拇指垂直滚动条android:scrollbarTrackVertical="@---":垂直滚动条轨道android:scrollbarTrackHorizontal="@---":水平滚动条轨道android:scrollbarAlwaysDrawHorizontalTrack="true|false":水平滚动条总是吸引轨道android:scrollbarAlwaysDrawVerticalTrack="true|false":垂直滚动条总是吸引轨道android:fadingEdge="none|horizontal|vertical":衰落的边缘android:fadingEdgeLength="---":边长衰落android:nextFocusLeft="----":下左焦点android:nextFocusUp="---":下一个重点注册android:nextFocusRight="---":正确的下一个重点android:nextFocusDown="---":下一个焦点下移android:clickable="true|false":点击android:longClickable="true|false"android:saveEnabled="true|false":启用保存android:drawingCacheQuality="auto|low|hight":绘图缓存质量android:keepScreenOn="true|false":保持屏幕android:duplicateParentState="true|false":重复父状态android:minHeight="---":android:minWidth="----":android:soundEffectEnabled="true|false":音效启用android:hapticFeedbackEnable="true|false":触觉反馈启用android:contentDescription="@---":内容概述android:onClick="@---":android:layout_gravity="top|bottom|right|left|center_vertical|center_ horizontal|fill_vertical|fill_horizontal|center|fill|clip_vertical|cl ip_horizontal":重力android:layout_width="fill_parent|match_parent|wrap_content" android:Llayout_height="fill_parent|match)parent_wrap_content" android:layout_margin="":android:layout_marginLeft=""android:layout_marginTop=""android:layout_marginRight=""android:layout_marginBottom=""DialerFilter(拨号器过滤器):ExpandableListView(可扩展的列表视图):FrameLayout(针布局):GridView(网格视图):HorizontalScrollView(水平滚动查看):ImageSwither(图像切换):LinearLayout(线性布局):ListView(列表视图):MediaController(媒体控制器):RadioGroup(单选按钮组):RelativeLayout(相对布局):ScrollView(滚动查看):SlidingDrawer(滑动抽屉):TabHost(标签主机):TabWidget(标签控件):TableLayout(表格布局):TableRow(表行):TextSwitcher(文字切换):ViewAnimator(查看动画):ViewFlipper(参看弗利珀):ViewSwitcher(查看切换):--------------------------------------------------- GestureOverlayView(手势覆盖查看):SurfaceView(表现观):View(参看):ViewStub(查看存根):WebView(WEB视图):AnalogClock(模拟时钟):AutoCompleteTextView(自动完成文本视图):Button(按钮):CheckBox(复选框):CheckedTextView(检查的文字查看):Chronometer(时计):DatePicker(日期选择器):DigitalClock(数字时钟):EditText(编辑文字):Gallery(画廊):ImageButton(图像按钮):ImageView(图像查看):MultiAutoCompleteTextView(多自动完成文本查看): ProgressBar(进度):QuickContactBadge(快速联系徽章):Radio Button(单选按钮):RatingBar(评分酒吧):SeekBar(搜索栏:即拖拉进度条):Spinner(微调):TextView(文本视图):TimePicker(时间选择器):ToggleButton(切换按钮):TwoLineListItem(两线列表项):VideoView(视频查看):ZoomButton(变焦按钮):ZoomControls(缩放控制):Include(包括):-------------------------------<merge></merge>(合并):xmlns:android="/apk/res/android"android:layout_gravity="top|bottom|left|right|center_vertical|fill_ve rtical|center_horizontal|fill_horizontal|center|fill|clip_vertical|cl ip_horizontal"android:layout_width="fill_parent|match_parent|wrap_content" android:layout_height="fill_parent|match_parent|wrap_content" android:layout_margin=""android:layout_marginLef=""android:layout_marginTop=""android:layout_marginRight=""android:layout_marginBottom=""第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent 相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alignParentLeft 贴紧父元素的左边缘android:layout_alignParentRight 贴紧父元素的右边缘android:layout_alignParentTop 贴紧父元素的上边缘android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物第二类:属性值必须为id的引用名“@id/id-name”android:layout_below 在某元素的下方android:layout_above 在某元素的的上方android:layout_toLeftOf 在某元素的左边android:layout_toRightOf 在某元素的右边android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐第三类:属性值为具体的像素值,如30dip,40pxandroid:layout_marginBottom 离某元素底边缘的距离android:layout_marginLeft 离某元素左边缘的距离android:layout_marginRight 离某元素右边缘的距离android:layout_marginTop 离某元素上边缘的距离EditText的android:hint 设置EditText为空时输入框内的提示信息。
androidpersist属性使用Android的`android:persist`属性用于指示应用程序是否可以在重新启动后继续保持其状态。
当`android:persist`属性设置为`true`时,系统会尝试在设备重启后恢复应用程序的状态。
这有助于提供更好的用户体验,因为用户可以在重新启动后继续与应用程序进行互动,而无需重新开始。
要使用`android:persist`属性,需要在应用程序的清单文件(`AndroidManifest.xml`)中添加以下代码:```xml<activity...</activity>```在上述示例中,`MainActivity`是要使用`android:persist`属性的活动。
使用`android:persist`属性时需要注意以下几点:1. `android:persist`属性仅适用于活动。
它不能应用于服务、广播接收器或其他组件。
2. 在应用程序的清单文件中使用`android:persist`属性时,确保将其添加到要恢复状态的每个活动上。
3. 保留`android:persist`属性的默认值为`false`。
设置为`true`时,系统才会尝试在设备重启后恢复应用程序的状态。
4. 当重新启动设备时,系统会尝试恢复每个具有`android:persist`属性设置为`true`的活动的状态。
但是,如果设备内存不足,系统可能会清除一些应用程序的状态。
5. 使用`android:persist`属性可能会对应用程序的性能产生一定的影响。
因此,只有当应用程序需要持久保持其状态并且性能牺牲可接受时,才应使用此属性。
虽然`android:persist`属性可以确保应用程序在重新启动后保持其状态,但是这并不是持久化数据的最佳解决方案。
如果应用程序需要保存和恢复大量的数据,建议使用其他持久化技术,如`SharedPreferences`、数据库或文件存储。
Android 中的android.provider.Settings.System 系统属性设定2012/04/12 0 Content Provider 中的Setting.System 表内存储了很多系统属性的,以键对的形式存在!可以对如下的变量进行设置ConstantsStringACCELEROMETER_ROTATIONControl whether the accelerometer will be used to change screen orientation.StringADB_ENABLEDThis constant is deprecated. Use ADB_ENABLED insteadStringAIRPLANE_MODE_ONWhether Airplane Mode is on.StringAIRPLANE_MODE_RADIOSA comma separated list of radios that need to be disabled when airplane mode is on.StringALARM_ALERTPersistent store for the system-wide default alarm alert.StringALWAYS_FINISH_ACTIVITIESIf 1, the activity manager will aggressively finish activities and processes as soon as they are no longer needed.StringANDROID_IDThis constant is deprecated. Use ANDROID_ID insteadStringAPPEND_FOR_LAST_AUDIBLEAppended to various volume related settings to record the previous values before they the settings were affected by asilent/vibrate ringer mode change.StringAUTO_TIMEValue to specify if the user prefers the date, time and time zone to be automatically fetched from the network (NITZ).StringAUTO_TIME_ZONEValue to specify if the user prefers the time zone to be automatically fetched from the network (NITZ).StringBLUETOOTH_DISCOVERABILITYDetermines whether remote devices may discover and/or connect to this device.StringBLUETOOTH_DISCOVERABILITY_TIMEOUTBluetooth discoverability timeout.StringBLUETOOTH_ONThis constant is deprecated. Use BLUETOOTH_ON insteadStringDATA_ROAMINGThis constant is deprecated. Use DATA_ROAMING insteadStringDATE_FORMATDate format string mm/dd/yyyy dd/mm/yyyy yyyy/mm/ddStringDEBUG_APPName of an application package to be。
android系统属性build.prop,所在位置:out\target\product\kylin\system\build.prop用数据线连接android 设置,进入调试模式(在android的设置--应用程序--开发--USB调试)开始--运行--CMDC:\Documents and Settings\Administrator>adb shell# cd systemcd system# lslsapp build.prop fonts lib usrbin etc framework media xbin可以看到build.prop,这个就是系统的属性表,若要COPY出来,这样操作:比如COPY到D盘的leo目录下C:\Documents and Settings\Administrator>adb pull system/build.prop d://leo120 KB/s (0 bytes in 1925.000s)C:\Documents and Settings\Administrator>可用记事本打开查看若要在java代码里读取里面的属性值,则需用到android.os.SystemProperties这个类,此类未开放(未提供给SDK API),此类具体位置:frameworks\base\core\java\android\os\SystemProperties.java能够在frameworks里面使用,比如在所有文件policies\base\phone\com\android\internal\policy\impl\LockScreen.java 里使用final boolean isMonkey = SystemProperties.getBoolean("ro.monkey", false);也能够在android自带的APP 里使用,比如在Settings app里使用packages\apps\Settings\src\com\android\settings\deviceinfo\Status.java//leo added for KYLIN-529if(SystemProperties.get("").equals("surfone_citic"))。
网上有一篇文章介绍了Android的属性系统(/tekkamanitachi/archive/2009/06/18/4280982.aspx),我现在对其进行补充:1. android现在好像只有/ default.prop,/system/build.prop两个文件,别的两个文件找不到2. /data/property下有4个prop文件:persist.sys.timezone,nguage,persist.sys.country,persist.sys.localevar,里面保存着属性名称以“persist.”开头的属性值。
3. libcutils的源码位于system\core\libcutils\下面,获取和设置属性的代码在properties.c里面,读取属性通过读共享内存得到,设置属性通过发送请求到property_service进行设置。
4. 相关的函数有property_set,property_get,property_list。
5. 属性系统的初始化通过__system_properties_init函数完成,__system_properties_init函数代码如下:view plaincopy to clipboardprint?01.int __system_properties_init(void)02.{03.prop_area *pa;04.int s, fd;05.unsigned sz;06.char *env;07.if(__system_property_area__ != ((void*) &dummy_props)) {08.return 0;09.}10.env = getenv("ANDROID_PROPERTY_WORKSPA CE");11.if (!env) {12.return -1;13.}14.fd = atoi(env);15.env = strchr(env, ',');16.if (!env) {17.return -1;18.}19.sz = atoi(env + 1);20.pa = mmap(0, sz, PROT_READ, MAP_SHARED, fd, 0);21.if(pa == MAP_FAILED) {22.return -1;23.}24.if((pa->magic != PROP_AREA_MA GIC) || (pa->version != PROP_AREA_VERSION)) {25.munmap(pa, sz);26.return -1;27.}28.__system_property_area__ = pa;29.return 0;30.}int __system_properties_init(void){prop_area *pa;int s, fd;unsigned sz;char *env;if(__system_property_area__ != ((void*) &dummy_props)) {return 0;}env = getenv("ANDROID_PROPERTY_WORKSPACE");if (!env) {return -1;}fd = atoi(env);env = strchr(env, ',');if (!env) {return -1;}sz = atoi(env + 1);pa = mmap(0, sz, PROT_REA D, MAP_SHA RED, fd, 0);if(pa == MAP_FAILED) {return -1;}if((pa->magic != PROP_AREA_MA GIC) || (pa->version != PROP_AREA_VERSION)) {munmap(pa, sz);return -1;}__system_property_area__ = pa;return 0;}可以看到首先从环境变量里面获取A NDROID_PROPERTY_W ORKSPA CE,ANDROID_PROPERTY_WORKSPACE的值为如下形式:ANDROID_PROPERTY_WORKSPACE=9,32768。
Android官方开发教程中文版支持不同设备支持不同设备Android设备来自世界各地,有不同形状和尺寸。
通过广泛的设备类型,你的应用有机会影响到庞大的受众。
为了在Android系统中尽可能地成功,你的应用需要适用各种设备配置。
你应该考虑包括不同语言、屏幕尺寸以及不同版本的Android平台的某些重要的变化。
本课程教你如何用一个程序包,使用基本的平台特性,利用可替换资源和其它特性,在多种Android兼容设备上优化用户体验。
支持不同语言从你的App代码中,把界面的字符串提取出来放在外部文件中总是一个好习惯。
在Android项目中使用资源目录使这一切变得很容易。
如果你使用Android SDK工具创建项目(参见“创建Android项目”),它会在项目根目录下创建一个res/目录,res/目录下包括多种资源类型的子目录。
这里会有几个默认文件,比如res/values/strings.xml就保存了你的字符串值。
创建本地化目录和字符串文件要支持更多的语言,在res/目录下创建一个额外的values目录,并在目录名称的末尾包含连字符和标准国家代码。
例如,values-es/目录包含了为语言代码“es”本地化的简单资源。
Android系统会根据设备运行时的区域设置加载适当的资源。
一旦你决定了要支持哪些语言,创建相应的资源子目录和字符串文件,例如:MyProject/res/values/strings.xmlvalues-es/strings.xmlvalues-fr/strings.xml在对应的文件中添加本地化字符串。
运行时,Android系统会基于用户设备上的区域设置使用对应的字符串集。
例如,下面针对不同语言的字符串资源文件。
英语(默认区域),/values/strings.xml<?xml version="1.0" encoding="utf-8"?><resources><string name="title">My Application</string><string name="hello_world">Hello World!</string></resources>西班牙语,/values-es/strings.xml<?xml version="1.0" encoding="utf-8"?><resources><string name="title">Mi Aplicación</string><string name="hello_world">Hola Mundo!</string></resources>法语,/values-fr/strings.xml<?xml version="1.0" encoding="utf-8"?><resources><string name="title">Mon Application</string><string name="hello_world">Bonjour le monde !</string></resources>注意:你可以对任何资源类型使用区域限定符(或任何配置限定符),比如你想为你的位图资源提供一个本地化版本。
Android系统常用布局介绍Android中的布局包括线性布局,表格布局,相对布局,帧布局,绝对布局。
下面分别对每个布局进行一个介绍。
在介绍android的布局管理器之前,有必要了解android平台下的控件类。
首先要了解的是View类,该类为所有可视化控件的基类,主要提供了控件绘制和事件处理的方法。
创建用户界面所使用的控件都继承自View,如TextView,Button,CheckBox等。
补充:另外一个需要了解的是ViewGroup类,它也是View类的子类,但是可以充当其他控件的容器。
ViewGroup的子控件既可以是普通的View,也可以是ViewGroup。
Android中的一些高级控件如Gally,GirdView等都继承自ViewGroup。
一:线性布局:LinearLayout类简介线性布局是最简单的布局之一,它提供了控件水平或者垂直排列的模型。
同时,使用此布局时可以通过设置控件的weight参数控制各个控件在容器中的相对大小。
LinearLayout布局的属性既可以在布局文件(XML)中设置,也可以通过成员方法进行设置。
案例:1.在布局管理器中实现布局:在eclipse中新建一个项目。
首先打开项目文件夹下res/values目录下的string.xml,写入一下内容:<?xml version=”1.0”encoding=”utf-8”?><resources><string name=”app_name”>LinearExample</string><string name=”button”>按钮</string><string name=”add”>添加</string></resources>说明:在string.xml中主要声明了程序中要用到的字符串资源,这样将所有字符串资源统一管理有助于提高程序的可读性及可维护性。
通用属性:
id ----------------------------- 为控件指定相应的id
text ----------------------------- 指定控件当中显示的文字
gravity ------------------------- 指定控件的内容对齐方式,比如说居中
textSize ---------------------- 指定控件当中字体的大小dip
background ------------------- 执行控件所使用的背景颜色,使用RGB方式赋值(如:#FFAA00)
width --------------------------- 指定控件的宽度px
height -------------------------- 指定控件的高度
padding* ---------------------- 指定控件的内边距,即控件中的内容与控件边缘的距离
margin* ----------------------- 指定控件的外边距,即该控件与父控件边缘的距离
singleLine --------------------- 是否单行显示,如果设置为true则该控件里面的内容只显示一行
layout_width ----------------- 指定控件处于布局控件中的宽度,包含(fill_parent,wrap_content,match_parent)
layout_height ---------------- 指定控件处于布局控件中的高度,包含(fill_parent,wrap_content,match_parent)
*id: 以@+id/viewId格式来指定控件的id,如果要使用系统已经存在的id,则使用@id/viewId方式进行指定
*text: 尽量使用资源文件strings.xml来定义显示文字,然后通过@string/stringName来引用定义的文字
*layout_*( layout_width, layout_height): fill_parent表示填充满父控件也就是所处于的布局控件的整个宽/高,wrap_content 表示包裹内容即内容有多少则该控件就有多宽/高,match_parent表示适应父控件中剩余宽/高,即除去布局控件下的其他控件的宽/高后剩下的宽/高就是该控件的宽/高
LinerLayout:
layout_weight --------------- 定义控件在LinerLayout布局中所占的比例
*layout_weight: 该属性通常用于设置在处于LinerLayout布局中的控件上,该比例是由该控件的weight值除以布局元素下所有控件的weight值之和,如:LinerLayout下有3个控件,第一个控件weight为1,第二个控件weight为2,第三个控件weight 为3,则第一个控件占整个LinerLayout的1/6,第二个控件占整个LinerLayout的2/6,第三个控件占整个LinerLayout的3/6
TableLayout:
stretchColumns ------------ 定义TableLayout布局中用于拉伸适应列的索引
* stretchColumns: 该属性设用于设置在TableLayout布局控件上,该索引是从0开始
RelativeLayout:
位置关系:
layout_above --------------- 定义该控件位于指定控件的上方
layout_below --------------- 定义该控件位于指定控件的下方
layout_toLeftOf ------------ 定义该控件位于指定控件的左边
layout_toRightOf ---------- 定义该控件位于指定控件的右边
对齐关系:
layout_alignBaseline ----- 定义该控件和指定控件的baseline对齐
layout_alignTop ----------- 定义该控件的顶部与指定控件的顶部对齐
layout_alignBottom ------ 定义该控件的底部与指定控件的底部对齐
layout_alignLeft ----------- 定义该控件的左边与指定控件的左边对齐
layout_alignRight --------- 定义该控件的右边与指定控件的右边对齐
与父控件对齐关系
layout_alignParentBottom 定义该控件的底部是否与父控件的底部对齐
layout_alignParentLeft –定义该控件的左边是否和父控件的左边对齐
layout_alignParentRight 定义该控件的右边是否与父控件的右边对齐
layout_alignParentTop –定义该控件的顶部是否与父控件的顶部对齐
居中:
layout_centerHorizontal 定义该控件是否水平居中
layout_centerVertical --- 定义该控件是否垂直居中
layout_centerInParent –定义该控件是否在父控件中水平和垂直方向都居中
*位置关系、对齐关系: 用以指定该控件所依赖控件的id,以@id/targetId格式指定(注:@与id之间没有+号) *与父控件关系、居中:该属性值为boolean值,如果设置为true则代表是,反之为否。