package com.BeeFramework.view; import java.lang.reflect.Field; import android.app.Activity; public class BeeInjector { private static BeeInjector instance; private BeeInjector() { } public static BeeInjector getInstance() { if (instance == null) { instance = new BeeInjector(); } return instance; } public void injectView(Activity activity) { // TODO Auto-generated method stub Field[] fields = activity.getClass().getDeclaredFields(); if (fields != null && fields.length > 0) { for (Field field : fields) { if (field.isAnnotationPresent(BeeInjectId.class)) { injectView(activity, field); } } } } private void injectView(Activity activity, Field field) { // TODO Auto-generated method stub if (field.isAnnotationPresent(BeeInjectId.class)) { BeeInjectId viewInject = field.getAnnotation(BeeInjectId.class); int viewId = viewInject.id(); try { field.setAccessible(true); field.set(activity, activity.findViewById(viewId)); } catch (Exception e) { e.printStackTrace(); } } } }