ndroid程序中的ID是怎么来的?如何与实际资源对应?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ndroid程序中的ID是怎么来的?如何与实际资源对应?相关的知识,希望对你有一定的参考价值。

参考技术A

android程序中的资源ID是Android SDK自动生成的,Android SDK会自动生成一个R文件,里面有所有的资源ID。

Android设备的设备id是惟一确定一台设备的ID标识,即不同的设备是不相同的,不会重复,而且是固定不变的。

Android中的组件要用一个int类型的值来表示,这个值也就是组件标签中的ID属性值。ID属性只能接受资源类型的值,即是必须以@开头的值,例如@id/abc等。   

如果在@后面使用“+”则表示当修改完某个布局文件,并保存后,系统会自动在  R.java文件中生成相应的int类型变量。变量名就是“/”后面的值,例如@+id/xyz会在R.java文件中生成int xyz = value,其中value是一个十六进制的数。

@+id 系统会自动把你起的ID名字加入到配置文件中,在业务逻辑中可以直接在R.id中找到。

而用@id 则不会自动加载到R.id 而且也不能随意起名,要在Value目录下写一个ids.xml来对每个id进行声明,声明的个格式为,<item name="" type="id" /> 这种写法主要方便统一管理

如果xyz在R.java中已经存在同名的变量,就不再生成新的变量而该组件会使用这已存在的变量的值。

R文件的说明如下:

/* AUTO-GENERATED FILE.  DO NOT MODIFY.

* This class was automatically generated by the

* aapt tool from the resource data it found.  It

* should not be modified by hand.

*/

提示开发者,这是一个自动生成的文件,不能手动去修改它。

设置小程序模板消息keyword_id_list问题

设置小程序模板消息时,会传一个keyword_id_list,这个参数是由一串数字组成的,开发时如果碰到设置错误,会有疑问这串数字是怎么来的,这里解释一下:

 

 

  • 小程序的keyword_id_list主要是来控制小程序模板消息发送给顾客的格式的,具体是什么格式是有开发者自行去选择定义的

技术图片

  • 那开发者如何去自行定义这些数字呢?这个数字实际上是在微信小程序的模板消息后台获取的

技术图片

技术图片

以上是关于ndroid程序中的ID是怎么来的?如何与实际资源对应?的主要内容,如果未能解决你的问题,请参考以下文章

设置小程序模板消息keyword_id_list问题

如何从android中的另一个应用程序资源更改主题?

MFC如何添加菜单快捷键

如何在 Android 中对 Uber SDK 中的用户进行身份验证?

NSCache缓存怎么来的

MAVEN中的GROUP ID与ARTIFACTID