package com.finddreams.baselib.utils; import java.io.File; import java.util.Timer; import java.util.TimerTask; import android.app.Activity; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import com.finddreams.baselib.R; /** * @Description: Activity的工具类 * @author http://blog.csdn.net/finddreams */ public class ActivityUtil { private static final String TAG = "ActivityUtil"; /** * 延迟去往新的Activity * @param context * @param cls * @param delay */ public static void delayToActivity(final Context context,final Class<?> cls,long delay) { Timer timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { context.startActivity(new Intent(context, cls)); } }, delay); } /** * 跳转到另一个Activity,不携带数据,不设置flag * @param context * @param cls */ public static void goToActivity(Context context,Class<?> cls) { Intent intent = new Intent(); intent.setClass(context, cls); // intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP); context.startActivity(intent); } /** * go to activity,use animation * @param context * @param cls * @param enterAnim * @param exitAnim */ public static void goToActivity(Context context,Class<?> cls,int enterAnim,int exitAnim,Bundle bundle) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); intent.putExtras(bundle); activity.startActivity(intent); activity.overridePendingTransition(enterAnim,exitAnim); } /** * to new activity,use animation from right to left * @param context * @param cls */ public static void goToActivityFromLeft2Right(Context context,Class<?> cls) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_right,R.anim.out_to_right); } /** * to new activity,use animation from right to left carry data * @param context * @param cls */ public static void goToActivityFromLeft2Right(Context context,Class<?> cls,Bundle bundle) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); intent.putExtras(bundle); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_right,R.anim.out_to_right); } /** * to new activity,use animation from left to right * @param context * @param cls */ public static void goToActivityFromRight2Left(Context context,Class<?> cls) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_left,R.anim.out_to_left); } /** * to new activity,use animation from left to right carry data * @param context * @param cls */ public static void goToActivityFromRight2Left(Context context,Class<?> cls,Bundle bundle) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); intent.putExtras(bundle); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_left,R.anim.out_to_left); } /** * to new activity,use animation from bottom to top carry data * @param context * @param cls * @param bundle */ public static void goToActivityFromBottom2Top(Context context,Class<?> cls,Bundle bundle) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); intent.putExtras(bundle); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_bottom,R.anim.out_to_top); } /** * to new activity,use animation from bottom to top * @param context * @param cls * @param bundle */ public static void goToActivityFromBottom2Top(Context context,Class<?> cls) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_bottom,R.anim.out_to_top); } /** * to new activity,use animation form top to bottom * @param context * @param cls */ public static void goToActivityFromTop2Bottom(Context context,Class<?> cls) { Activity activity = (Activity)context; Intent intent = new Intent(); intent.setClass(activity, cls); activity.startActivity(intent); activity.overridePendingTransition(R.anim.in_from_top,R.anim.out_to_bottom); } /** * 跳转到另一个Activity,携带数据 * @param context * @param cls */ public static void goToActivity(Context context,Class<?> cls,Bundle bundle) { Intent intent = new Intent(); intent.setClass(context, cls); intent.putExtras(bundle); context.startActivity(intent); } }