只要知道资源的ID以及你编译进目标文件的资源类型就可以在代码里使用它来。下面是一些语法:
R.resource_type.resource_name
或者
android.R.resource_type.resource_name
resource_type是R子类的一种类型。
resource_name 是定义在XML文件里的资源名或者为其他文件类型定义的资源文件(没有后缀)名。
每种类型的资源会被加入到一个特定的R的子类中;为了学习哪种R的子类里有你编译的资源类型,参考资源引用 文档。被编译进应用程序的资源不需要
包的名字就可以直接被访问到(像这样:R.resource_type.resource_name).
Android包含一些标准资源,如屏幕的类型,按钮的背景。要使用这些代码,你需要包含 android, 如
android.R.drawable.button_background.
这里有一些好的和糟糕的例子说明如何在代码里使用编译后的资源:
// 从画图资源类里装载一个当前屏幕背景。
this.getWindow().setBackgroundDrawableResource(R.drawable.my_background_image);
// 错误! 将一个资源ID装入一个需要字符串的方法中
this.getWindow().setTitle(R.string.main_title);
//正确!需要从资源封装类里取得标题。
this.getWindow().setTitle(Resources.getText(R.string.main_title));
// 从当前屏幕中装载布局数据。
setContentView(R.layout.main_screen);
//从ViewFlipper对象中设置动画中一帧 。
mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
R.anim.hyperspace_in));
// 在TextView对象中设置文本内容。
TextView msgTextView = (TextView)findViewByID(R.id.msg);
msgTextView.setText(R.string.hello_message);