每当我想在非root包中使用任何资源元素时,我都必须导入自己的R class
(不是Android R类)。例如,
根包com.example.test
和文件Main.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
无需导入R class
。
当我创建另一个包com.example.test.something
以及Something.java
中的新类时,我必须导入我自己的R.class
import com.example.test.R;
//...other code...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
当我将Java文件从root用户移动到非root用户包时,会自动发生这种情况。
为什么这么重要?
答案 0 :(得分:8)
您的R
课程位于您的应用程序包com.example.test
中 - 请查看它的包裹声明。如果您想从任何其他包引用它,您需要导入它或完全限定其名称,就像任何其他类一样。