欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java反射,用于GridView,很好玩哦,javagridview,import java.

来源: javaer 分享于  点击 19278 次 点评:78

java反射,用于GridView,很好玩哦,javagridview,import java.


import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.ArrayList;public class FanShe {    public static void main(String[] args) {        ArrayList<PageItem> items2 = new ArrayList<PageItem>();        items2.add(new PageItem("asdfasdf", 123, "showGoodPub"));        int position = 0;//      gridView.setOnItemClickListener(new OnItemClickListener() {//          @Override//          public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                items2.get(position).onClick();//          }}//      );    }}class PageItem {    public final String     itemText;    public final int        itemImage;    private final String    methodName;    public PageItem(String itemText, int itemImage, String methodName) {        this.itemText = itemText;        this.itemImage = itemImage;        this.methodName = methodName;    }    public void onClick() {        try {            Method m1 = UIHelper.class.getDeclaredMethod(methodName, Context.class);            m1.invoke(UIHelper.class, new Context());        } catch (IllegalArgumentException e) {            e.printStackTrace();        } catch (IllegalAccessException e) {            e.printStackTrace();        } catch (InvocationTargetException e) {            e.printStackTrace();        } catch (SecurityException e) {            e.printStackTrace();        } catch (NoSuchMethodException e) {            e.printStackTrace();        }    }}class UIHelper {    public static void showGoodPub(Context context) {        context.startActivity("我炒尼吗");    }}class Context {    public void startActivity(String intent) {        System.out.println(intent);    }}//该片段来自于http://byrx.net
相关栏目:

用户点评