Android随时随地退出应用程序
来源:互联网 发布:lovelive舞蹈教学 知乎 编辑:程序博客网 时间:2024/06/16 09:45
package com.itheima74.baseactivity;import android.os.Bundle;import android.os.Process;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.view.Menu;import android.view.MenuItem;import java.util.ArrayList;/** * 随时随地退出程序解决思路: * 1.按home键挂起程序,再按home键清除进程 * 2.以下方法: * BaseActivity是父类,MainActivity,SecondActivity,ThirdActivity是子类, * 子类继承了父类所有属性和方法. * 使用Memu菜单,点击菜单Exit,退出程序 * Created by My on 2017/2/28. */public class BaseActivity extends AppCompatActivity { protected static ArrayList<BaseActivity> mActivityList = new ArrayList<>(); @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 每一个子类创建时都会调用父类onCreate()方法,将自己添加到全局mActivityList中 mActivityList.add(this); } // 每一个子类都会创建一个选项菜单,以便用户退出程序 @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; } // 用户选择Exit后集合中所有Activity.finish掉,从而退出程序 @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == R.id.item_exit) { for (BaseActivity baseActivity : mActivityList) { baseActivity.finish(); } // 杀死当前程序进程 Process.killProcess(Process.myPid()); } return super.onOptionsItemSelected(item); } @Override protected void onDestroy() { super.onDestroy(); // 每退出一个Activity,都要从集合中移除 mActivityList.remove(this); }}
package com.itheima74.baseactivity;import android.content.Intent;import android.os.Bundle;import android.util.Log;import android.view.View;public class MainActivity extends BaseActivity { private static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.e(TAG, "MainActivity: "+ mActivityList.size()); } // 点击按钮,启动SecondActivity public void click(View view) { startActivity(new Intent(this, SecondActivity.class)); }}
package com.itheima74.baseactivity;import android.content.Intent;import android.os.Bundle;import android.util.Log;import android.view.View;public class SecondActivity extends BaseActivity { private static final String TAG = "SecondActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); Log.e(TAG, "SecondActivity: " + mActivityList.size()); } // 点击按钮,启动ThirdActivity public void click(View view) { startActivity(new Intent(this, ThirdActivity.class)); }}
package com.itheima74.baseactivity;import android.os.Bundle;import android.util.Log;public class ThirdActivity extends BaseActivity { private static final String TAG = "ThirdActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_third); Log.e(TAG, "ThirdActivity: " + mActivityList.size()); }}
1 0
- Android随时随地退出应用程序
- Android随时随地退出程序
- Android 随时随地退出程序
- Android程序:随时随地退出程序
- Android, 随时随地退出程序ActivityCollector
- Android开发随时随地退出程序
- Activity管理类,随时随地退出应用程序
- android-管理activity,随时随地退出Activity
- 【Android】24、如何随时随地退出程序
- Android之如何随时随地退出程序
- 随时随地退出程序
- 随时随地退出程序
- 随时随地的退出
- 随时随地退出程序
- 随时随地退出应用
- 随时随地退出程序
- 随时随地的退出程序
- 随时随地退出程序
- 利用ns3做full duplex仿真的参考资料
- 2017pycharm 3.2 激活码
- 机器学习中的有监督学习,无监督学习,半监督学习的区别
- PAT甲级1045. Favorite Color Stripe (30)
- 欢迎使用CSDN-markdown编辑器
- Android随时随地退出应用程序
- 几个重要的 ASM Disk Groups 参数
- Fastlane的sigh指令
- c++第二次实验-6质数输出
- Array比较好用的属性和方法
- 如何评价分类模型性能?(附带参考文献)
- Java中getResourceAsStream的用法
- ubuntu16.0.4安装搜狗输入法
- C++知识点11