java反射android的r文件的示例

java反射android的r文件的示例,第1张

概述动态取得R文件的int值,通过string-arrayname属性动态获取R.array.xxx的int值复制代码代码如下://通过string-arrayname属性动态获取R.array.xxx的int值publicCharSequence[]getListData(Stringname){  &n

动态取得R文件的int值,通过string-array name属性动态获取R.array.xxx的int值

复制代码 代码如下:
//通过string-array name属性动态获取R.array.xxx的int值
public CharSequence[] getListData(String name) {
        try {
            Class<?> arrayClass = getArrayResource().getClass();
            FIEld intFIEld = arrayClass.getFIEld(name);
            int sourceID = intFIEld.getInt(name);
            return getResources().getTextArray(sourceID);
        } catch (Exception e) {
            e.printstacktrace();
        }
        return null;
    }

private Object arrayResource = null;

private Object getArrayResource() {
        if (arrayResource == null) {
            Class<?> resource = R.class;
            try {
                Class<?>[] classes = resource.getClasses();
                for (Class<?> c : classes) {
                    int i = c.getModifIErs();
                    String classname = c.getname();
                    String s = ModifIEr.toString(i);
                    if (s.contains("static") && classname.contains("array")) {
                        return c.getConstructor().newInstance();
                    } else {
                        continue;
                    }
                }
            } catch (Exception e) {
                e.printstacktrace();
            }
        }
        return arrayResource;
    }

总结

以上是内存溢出为你收集整理的java反射android的r文件的示例全部内容,希望文章能够帮你解决java反射android的r文件的示例所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1141170.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存