android获取com.android.internal.R

来源:互联网 发布:ubuntu添加vga 788 编辑:程序博客网 时间:2024/05/21 10:44

使用class.jar, layout.jar可以直接导入com.android.internal.R

但是有个方法获取不到值mDatePicker.findViewById(com.android.internal.R.id.day)

很奇怪,在debug的时候,watch表达式能取到值,但是代码中取得的值却是null,一直无果者则寻找另外的出路了。

获取com.android.internal.R.id.month为例

方法一:反射变量

try{
Class c = Class.forName("com.android.internal.R$id");
Object obj = c.newInstance();
Field field = c.getField("month");
id = field.getInt(obj);
}catch(Exception e){
}

方法二:通过Resource

Resources mResources = Resources.getSystem();  //getResources()测试也可以
id = mResources.getIdentifier("month", "id", "android");

0 0
原创粉丝点击