首页编程java编程r.java文件中有什么(R.Java这个 文件里都有什么这个文件能手工修)

r.java文件中有什么(R.Java这个 文件里都有什么这个文件能手工修)

编程之家2023-10-14105次浏览

大家好,关于r.java文件中有什么很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于R.Java这个 文件里都有什么这个文件能手工修的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

r.java文件中有什么(R.Java这个 文件里都有什么这个文件能手工修)

怎么从apk 中获取r.java里的内容

R.java文件介绍

HelloWorld工程中的R.java文件

package com.android.hellworld;

r.java文件中有什么(R.Java这个 文件里都有什么这个文件能手工修)

public final class R{

public static final class attr{

}

r.java文件中有什么(R.Java这个 文件里都有什么这个文件能手工修)

public static final class drawable{

public static final int icon=0x7f020000;

}

public static final class layout{

public static final int main=0x7f030000;

}

public static final class string{

public static final int app_name=0x7f040001;

public static final int hello=0x7f040000;

}

}

R.java文件中默认有attr、drawable、layout、string等四个静态内部类,每个静态内部类分别对应着一种资源,如layout静态内部类对应layout中的界面文件,其中每个静态内部类中的静态常量分别定义一条资源标识符,如public static final int main=0x7f030000;对应的是layout目录下的main.xml文件。

由于目前【drawable-*dpi】目录下都只有icon.png一个图片文件,因此此时不同详述的同名的icon.png文件在drawable内部类总只有一个icon属性。如果我们在【drawable-*dpi】目录下再添加一幅图片,则内部类中会自动的添加一个icon属性。

PS:添加资源的命名规则:资源文件只能以小写字母和下划线做首字母,随后的名字中只能出现 [a-z0-9_.]这些字符,否则R.java文件不会自动更新,并且eclipse会提示错误。

理解了R.java文件中内容的来源,即当开发者在res/目录中任何一个子目录中添加相应类型的文件之后,ADT会在R.java文件中相应的匿名内部类中国自动生成一条静态int类型的常量,对添加的文件进行索引。如果在layout目录下再添加一个新的界面,那么在public static final class layout中也会添加相应的静态int常量。相反当我们在res目录下删除任何一个文件,其在R.java中对应的记录会被ADT自动删除。

R.java文件按除了有自动标示资源的索引功能之外,还有另外一个主要的功能,如果res目录中的某个资源在应用中没有被使用到,在该应用被编译的时候系统就不会把对应的资源编译到该应用的APK包中,这样可以节省Android手机的资源。

如何通过R.java文件来引用到所需要的资源

1.在java程序中引用资源

按照java的语法来引用即:R.resource_type.resource_name

注意:resource_name不需要文件的后缀名

Android系统本身自带了很多的资源,我们也可以进行引用,只是需要再前面加上“Android.”以声明该资源来自Android系统,即:Android.R.resource_type.resouce_name

例:【drawable-*hpi】下的icon.png

该图片在R.java文件的映射为drawable内部类下icon参数,则如果要获取该资源,则写法为:R.drawble.icon

2.在XML文件中引用资源

格式:@[package:]type/name

在xml文件中,如main.xml以及AndroidMainfest.xml文件中通过“@drawable/icon”的方式获取。其中“@”代表的是R.java类。“drawable”代表的是R.java中的静态内部类“drawable”,“/icon”代表静态内部类“drawable”中的静态属性“icon”,而该属性可以指向res目录下的“drawable-*dpi”中的icon.png资源。其他类型的文件也比较类似。凡是在R文件中定义的资源都可以通过“@Static_inner_classes_name/resource_name”的方式获取。如“@id/button”,“@string/app_name”。

如果访问的是Android系统中自带的文件,则要添加包名“Android:”。例如:android:textColor="@android:color/red"

在布局文件中当我们需要为一些组件添加Id属性作为标识,可以使用如下的表达式:“@+id/string_name”,其中“+”表示在R.java的名为id的内部类中国添加一条记录。例:“@+id/button”的含义是在R.java文件中的id这个静态内部类添加一条常量名为button,该常量就是该资源的标识符。如果 id这个静态内部类不存在,则会先生成它。

为什么无法引用R.java的文件中的资源

R文件没有生成自己的id,通常是res目录下有错误。

解决方式:

选择“eclipse-- myeclipse”的clean,R文件便会出现。

在工程上点击鼠标右键,选择“Build Project”,R.java就会恢复。这样在程序中调用R文件指向的资源,也就可以自动补全了。

如果R文件丢失,则可以从别的工程中拷贝一份R文件过来,然后clean一下也可更新R文件。

如果上述步骤都不行。可能是工程本身所引起的错误,比如resoure资源中的文件命名,资源文件名称需要全部小写。

检查R文件是否import错误了。

java的基本数据类型有哪些

java的基本数据类型有:

1、布尔型(boolean)

取值范围:True或 False

2、字节型(byte)

取值范围:0- 255

3、短整型(short)

取值范围:-32,768~ 32767

4、整型(int)

取值范围:-2,147,483,648~ 2,147,483,647

5、长整型(long)

取值范围:-9223372036854775808~9223372036854775807

6、单精度浮点型(float)

负数范围:

-3.402823E38~-1.401298E-45

正数范围:

1.401298E-45~ 3.402823E38

7、双精度浮点型(double)

负数范围:

-1.797,693,134,862,32E308~

-4.940,656,458,412,47E-324

正数范围:

4.940,656,458,412,47E-324~

1.797,693,134,862,32E308

8、字符型(char)

取值范围:'\u0000'~'\ufff'

扩展资料

任何数据类型的数组都需要 20个字节的内存空间,加上每一数组维数占 4个字节,再加上数据本身所占用的空间。数据所占用的内存空间可以用数据元数目乘上每个元素的大小加以计算。

例如,以 4个 2字节之 Integer数据元所组成的一维数组中的数据,占 8个字节。这 8个字节加上额外的 24个字节,使得这个数组所需总内存空间为 32个字节。

参考资料:百度百科——数据类型

R.Java这个 文件里都有什么这个文件能手工修

android开发中使用的内部的资源主要分为原生资源和非原生资源。

原生的资源在android中是不会发生任何变化的,由系统直接调用显示;

而非原生资源都是由Android系统系统的AAPT进行编译,形成计算机识别的进制代码,例如:0x7f020000,这些编译过的进制代码最终以整形数据的形式存储于gen目录下的R.java类中,如图所示:

这个R.java类中的信息是不能手动修改的,这些信息全都是自动生成的代码。

R.java类中的信息的调用分为两种情况:资源文件中引用、代码中引用。

资源文件中引用:@资源类型/资源名称,例如:引用字符串a-->@string/a

代码中引用:R.所属类型.资源名称,例如:引用布局a--->R.layout.a

END,本文到此结束,如果可以帮助到大家,还望关注本站哦!

java中的 符号作用是什么意思,JAVA 中的 -> 是什么意思java问题什么是下标?java中的下标值是什么意思