国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

java反射android的r文件的示例

2020-04-11 11:51:43
字體:
來源:轉載
供稿:網友

動態取得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;
    }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 株洲市| 平罗县| 民乐县| 独山县| 天台县| 酉阳| 芜湖县| 惠东县| 沁阳市| 莱州市| 云和县| 清徐县| 雷山县| 黎川县| 岚皋县| 临城县| 会宁县| 合山市| 阿勒泰市| 青神县| 石渠县| 时尚| 南岸区| 二手房| 宝山区| 临邑县| 常州市| 正宁县| 梅州市| 三台县| 册亨县| 乌拉特前旗| 成都市| 永嘉县| 奈曼旗| 博兴县| 安溪县| 普兰店市| 古丈县| 格尔木市| 临沂市|