扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
TypedArray
(可用于可绘制对象数组)的 XML 资源。在 XML 中定义的布尔值。
成都创新互联公司于2013年开始,先为富县等服务建站,富县等地企业,进行企业商务咨询服务。为富县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。注意:Bool 是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将 bool 资源与其他简单资源合并到一个
元素下。
res/values/filename.xml
元素的 name
将用作资源 ID。R.bool.bool_name
@[package:]bool/bool_name
res/values-small/bools.xml
的 XML 文件:
以下应用代码会检索布尔值:
java代码: Resources res = getResources(); boolean screenIsSmall = res.getBoolean(R.bool.screen_small); kotlin代码: val screenIsSmall: Boolean = resources.getBoolean(R.bool.screen_small)以下布局 XML 会将该布尔值应用到属性:
在 XML 中定义的颜色值。颜色使用 RGB 值和 alpha 通道指定。您可以在接受十六进制颜色值的任何地方使用颜色资源。当 XML 中需要可绘制资源时,您也可以使用颜色资源(例如,android:drawable="@color/green"
)。
该值始终以井号 (#) 字符开头,后跟以下某种格式的“透明度、红、绿、蓝”(Alpha-Red-Green-Blue) 信息:
注意:颜色是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将颜色资源与其他简单资源合并到一个
元素下。
res/values/colors.xml
元素的 name
将用作资源 ID。R.color.color_name
@[package:]color/color_name
res/values/colors.xml
的 XML 文件:
以下应用代码会检索颜色资源:
java代码: Resources res = getResources(); int color = res.getColor(R.color.opaque_red); kotlin代码: val color: Int = resources.getColor(R.color.opaque_red)以下布局 XML 会将该颜色应用到属性:
在 XML 中定义的尺寸值。尺寸由数字后跟度量单位来指定。例如:10px、2in、5sp。Android 支持以下度量单位:
dp
sp
pt
px
mm
in
注意:尺寸是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将尺寸资源与其他简单资源合并到一个
元素下。
res/values/filename.xml
元素的 name
将用作资源 ID。R.dimen.dimension_name
@[package:]dimen/dimension_name
res/values/dimens.xml
的 XML 文件:
以下应用代码会检索尺寸:
java代码: Resources res = getResources(); float fontSize = res.getDimension(R.dimen.font_size); kotlin代码: val fontSize: Float = resources.getDimension(R.dimen.font_size)以下布局 XML 会将尺寸应用到属性:
在 XML 中定义的唯一资源 ID。Android 开发者工具可使用您在
元素中提供的名称,在您项目的 R.java
类中创建唯一的整数,供您用作应用资源(例如,界面布局中的 View
)的标识符,或创建唯一的整数,供您在应用代码中使用(例如,作为对话框的 ID 或结果代码)。
注意:ID 是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将 ID 资源与其他简单资源合并到一个
元素下。另外请注意,ID 资源并不引用实际的资源项;它只是一个唯一 ID,您可以将其附加到其他资源,或者在应用中作为唯一整数使用。
res/values/filename.xml
R.id.name
@[package:]id/name
保存在 res/values/ids.xml
的 XML 文件:
然后,以下布局代码段会将“button_ok”ID 应用到按钮微件:
请注意,android:id
值不会在 ID 引用中包含加号,因为此 ID 已存在,如上面的 ids.xml
示例中所定义。(如果使用加号以 android:id="@+id/name"
格式指定 XML 资源的 ID,则表示“name”ID 不存在,应该创建它。)
再比如,以下代码段使用“dialog_exit”ID 作为对话框的唯一标识符:
showDialog(R.id.dialog_exit)在同一应用中,在创建对话框时会比较“dialog_exit”ID:
java代码: protected Dialog onCreateDialog(int id) { Dialog dialog; switch(id) { case R.id.dialog_exit: ... break; default: dialog = null; } return dialog; } kotlin代码: override fun onCreateDialog(id: Int): Dialog? { return when(id) { R.id.dialog_exit -> { ... } else -> { null } } }在 XML 中定义的整数。
注意:整数是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将整数资源与其他简单资源合并到一个
元素下。
res/values/filename.xml
元素的 name
将用作资源 ID。R.integer.integer_name
@[package:]integer/integer_name
保存在 res/values/integers.xml
的 XML 文件:
以下应用代码会检索整数:
java代码: Resources res = getResources(); int maxSpeed = res.getInteger(R.integer.max_speed); kotlin代码: val maxSpeed: Int = resources.getInteger(R.integer.max_speed)在 XML 中定义的整数数组。
注意:整数数组是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将整数数组资源与其他简单资源合并到一个
元素下。
res/values/filename.xml
元素的 name
将用作资源 ID。R.array.integer_array_name
@[package:]array.integer_array_name
res/values/integers.xml
的 XML 文件:
以下应用代码会检索整数数组:
java代码: Resources res = getResources(); int[] bits = res.getIntArray(R.array.bits); kotlin代码: val bits: IntArray = resources.getIntArray(R.array.bits)在 XML 中定义的 TypedArray
。您可以使用这种资源创建其他资源(例如可绘制对象)的数组。请注意,此类数组不要求所含的资源具有相同的类型,因此您可以创建混合资源类型的数组,但必须知道数组中有哪些数据类型及其位置,以便可以使用 TypedArray
的 get...()
方法正确获取每一项数据。
注意:类型化数组是使用 name
属性中提供的值(而不是 XML 文件的名称)引用的简单资源。因此,您可以在一个 XML 文件中将类型化数组资源与其他简单资源合并到一个
元素下。
res/values/filename.xml
元素的 name
将用作资源 ID。TypedArray
的资源指针。R.array.array_name
@[package:]array.array_name
res/values/arrays.xml
的 XML 文件:
以下应用代码会检索每个数组,然后获取每个数组中的第一个条目:
java代码: Resources res = getResources(); TypedArray icons = res.obtainTypedArray(R.array.icons); Drawable drawable = icons.getDrawable(0); TypedArray colors = res.obtainTypedArray(R.array.colors); int color = colors.getColor(0,0); kotlin代码: val icons: TypedArray = resources.obtainTypedArray(R.array.icons) val drawable: Drawable = icons.getDrawable(0) val colors: TypedArray = resources.obtainTypedArray(R.array.colors) val color: Int = colors.getColor(0,0)我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流