Android examples for android.content:Context
Dynamically load R.styleable.name
/*//from ww w. j a v a 2s .c o m * Copyright 1999-2101 Alibaba Group. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ //package com.java2s; import android.content.Context; import java.lang.reflect.Field; public class Main { /** * Dynamically load R.styleable.name * @param context * @param name * @return */ public static int getStyleableResourceInt(Context context, String name) { if (context == null) return 0; try { //use reflection to access the resource class Field[] fields2 = Class.forName( context.getPackageName() + ".R$styleable").getFields(); //browse all fields for (Field f : fields2) { //pick matching field if (f.getName().equals(name)) { //return as int array int ret = (Integer) f.get(null); return ret; } } } catch (Throwable t) { /*no op*/ } return 0; } }