public class IntentSingle{ //跳转的Intent private Intent intent; //广播Intent private Intent sendIntent; //bundle传值 private Bundle bundle; private static IntentSingle Instance = new IntentSingle(); private IntentSingle() { intent = new Intent(); sendIntent = new Intent(); bundle = new Bundle(); } public Bundle getBundle() { return bundle; } //获取单例对象 public static IntentSingle getInstance() { return Instance; } /** * 或取Intent传的值,只有int 类型和String类型(根据需求添加) * @param key */ public String getString(String key){ return intent.getStringExtra(key); } public int getInt(String key){ return intent.getIntExtra(key,0); } public String[] getStringArrayList(String key){ return intent.getStringArrayExtra(key); } public int[] getIntArrayList(String key){ return intent.getIntArrayExtra(key); } //跳转传值 public <T>void addActivity(Context moveContext, Class<T> tClass, Bundle bundle){ intent.setClass(moveContext,tClass); intent.putExtras(bundle); moveContext.startActivity(intent); } //跳转 public <T>void addActivity(Context moveContext,Class<T> tClass){ intent.setClass(moveContext,tClass); moveContext.startActivity(intent); } //发送广播传值 public void sendBroadCast(Context broadContext,String action, Bundle bundle){ sendIntent.setAction(action); sendIntent.putExtras(bundle); broadContext.sendBroadcast(sendIntent); } //发送广播 public void sendBroadCast(Context broadContext ,String action){ sendIntent.setAction(action); broadContext.sendBroadcast(sendIntent); } }
Intent单例
最新推荐文章于 2022-10-09 20:45:18 发布