Android工具類----Activity之間的跳轉
阿新 • • 發佈:2019-02-14
簡述:
Activity之間的跳轉情況,在這裡分兩種討論:帶參跳轉和無參跳轉.
程式碼:
import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; import android.app.Activity; import android.content.Intent; public class ActivitySkipUtil { public ActivitySkipUtil() { throw new UnsupportedOperationException("ActivitySkipUtil不能例項化"); } /** * 功能描述:簡單地Activity的跳轉(不攜帶任何資料) * * @Time 2016年4月25日 * @Author lizy18 * @param activity * 發起跳轉的Activity例項 * @param TargetActivity * 目標Activity例項 */ public static void skipAnotherActivity(Activity activity, Class<? extends Activity> cls) { Intent intent = new Intent(activity, cls); activity.startActivity(intent); activity.finish(); } /** * 功能描述:帶資料的Activity之間的跳轉 * * @Time 2016年4月25日 * @Author lizy18 * @param activity * @param cls * @param hashMap */ public static void skipAnotherActivity(Activity activity, Class<? extends Activity> cls, HashMap<String, ? extends Object> hashMap) { Intent intent = new Intent(activity, cls); Iterator<?> iterator = hashMap.entrySet().iterator(); while (iterator.hasNext()) { @SuppressWarnings("unchecked") Map.Entry<String, Object> entry = (Entry<String, Object>) iterator .next(); String key = entry.getKey(); Object value = entry.getValue(); if (value instanceof String) { intent.putExtra(key, (String) value); } if (value instanceof Boolean) { intent.putExtra(key, (boolean) value); } if (value instanceof Integer) { intent.putExtra(key, (int) value); } if (value instanceof Float) { intent.putExtra(key, (float) value); } if (value instanceof Double) { intent.putExtra(key, (double) value); } } activity.startActivity(intent); } }