日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

android活动管理器,Android 中管理所有的 Acyivity 活动

發(fā)布時(shí)間:2024/9/19 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android活动管理器,Android 中管理所有的 Acyivity 活动 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我們在 App 中,通常會打開很多個(gè)任務(wù)棧,如果我們要退出 App,要點(diǎn)擊返回鍵一步步的退出?有沒有更簡單的方法嗎?答案是有的,我們創(chuàng)建一個(gè) Activity 管理器,來統(tǒng)一管理 Activity。

新建一個(gè) ActivityCollectior 類自作為活動管理器:

public class ActivityCollector {

/**

* 創(chuàng)建一個(gè)集合保存

*/

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

/**

* 添加 Activity

* @param activity

*/

public static void addActivity(Activity activity){

activities.add(activity);

}

/**

* 移除 Activity

* @param activity

*/

public static void removeActivity(Activity activity){

activities.remove(activity);

}

/**

* 移除所有 Activity

*

*/

public static void finishAll(){

for (Activity activity:activities){

if (!activity.isFinishing()){

activity.finish();

}

}

activities.clear();

}

}

創(chuàng)建一個(gè)基類,BaseActivity,讓所有的 Activity 繼承它。

public class BaseActivity extends AppCompatActivity {

@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

//添加創(chuàng)建的 Activity

ActivityCollector.addActivity(this);

}

@Override

protected void onDestroy() {

super.onDestroy();

//移除創(chuàng)建的 Activity

ActivityCollector.removeActivity(this);

}

}

隨便一個(gè) Activity 就可以退出 App,通過調(diào)用:

ActivityCollector.finishAll();

@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_second2);

ButterKnife.bind(this);

init();

}

private void init() {

tvValue.setText("這是第三個(gè)頁面");

}

@OnClick({R.id.bt1, R.id.bt2})

public void onViewClicked(View view) {

switch (view.getId()) {

case R.id.bt1:

//退出App

ActivityCollector.finishAll();

break;

case R.id.bt2:

break;

default:

}

}

/**

* Activity頁面跳轉(zhuǎn)建議這樣寫

* @param secondActivity

*/

public static void launch(SecondActivity secondActivity) {

Intent intent = new Intent(secondActivity,ThirdActivity.class);

secondActivity.startActivity(intent);

}

}

launch()這樣寫的好處:

1.別的 Activity 可以一句話調(diào)用。

2.可以清晰的看到傳遞過來的參數(shù),直接接受即可(重點(diǎn))。

總結(jié)

以上是生活随笔為你收集整理的android活动管理器,Android 中管理所有的 Acyivity 活动的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。