由于在Android中很多地方都会使用到R文件,使用R.id.xxx,R.layout.XXX,R.drawable.XXX等等。
若直接使用,当在AndroidManifest.xml中修改包名时,需要将所有引用到的位置都进行修改,从而增加了无关的工作量。
若将所有的R有关文件都进行封装之后,如下所示。
public final class Res{
public static final boolean DEBUG = FeatureConfig.DEBUG_LOG;
/**
* The following to implements the R
*/
public static final R.anim anim = new R.anim();
public static final R.array array = new R.array();
public static final R.attr attr = new R.attr();
public static final R.color color = new R.color();
public static final R.dimen dimen = new R.dimen();
public static final R.drawable drawable = new R.drawable();
public static final R.id id = new R.id();
public static final R.layout layout = new R.layout();
public static final R.raw raw = new R.raw();
public static final R.string string = new R.string();
public static final R.style style = new R.style();
public static final R.styleable styleable = new R.styleable();
public static final R.xml xml = new R.xml();
public static final R.plurals plurals = new R.plurals();
}
这种情况下导入所有R文件时,只需要使用Res.layout.XXX,R.id.XXX即可,此时就算修改了AndroidMainfest.xml文件,由于只在Res文件中导入了R的包,故只需修改此文件即可。