天天看點

安卓學習筆記一 —— Activity的一些使用技巧

安卓學習筆記一 —— Activity的一些使用技巧

一、知曉目前是在哪個Activity

首先需要建立一個BaseActivity繼承Activity,然後重寫onCreate()方法。

public class BaseActivity extends Activity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d("ActivityName", getClass().getSimpleName());
    }
}
           

然後讓目标Activity繼承BaseActivity即可在項目運作的時候知道目前所在的是哪個Activity。

二、随時随地退出程式

建立一個ActivityControlor作為Activity管理器

class ActivityControlor{

    public static ArrayList<Activity> activities = new ArrayList<Activity>();

    public static void addActivity(Activity activity) {
        activities.add(activity);
    }

    public static void removeActivity(Activity activity) {
        activities.remove(activity);
    }

    public static void finishAll() {
        for(Activity activity : activities) {
            if(!activity.isFinishing()) {
                activity.finish();
            }
        }
    }
}
           

當要在某個Activity中退出程式時調用

ActivityControlor.finishAll()

即可。

三、啟動Activity的最佳寫法

在需要啟動的Activity中添加如下靜态方法:

public static void actionStart(Context context, String...datas) {

        Intent intent = new Intent(context, SecondActivity.class);

        for(int i = 0; i < datas.length; i++) {
            String data = datas[i];
            intent.putExtra("param" + i, data);
        }

        context.startActivity(intent);
}
           

當某個Activity需要啟動此Activity時,隻需要調用

SecondActivity.actionStart(FirstActivity.this, data[]);

即可。