Activity小技巧
生活随笔
收集整理的這篇文章主要介紹了
Activity小技巧
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
隨時隨地退出程序
新建一個結合類對所有活動進行管理。
1 public class ActivityCollector{ 2 public static List<Activity> activities = new ArrayList<>(); 3 public static void addActivity(Activity activity){ 4 activities.add(activity); 5 } 6 public static void removeActivity(Acitivity activity){ 7 activities.remove(acitivity); 8 } 9 public static void finishAll(){ 10 for(Activity activity: activities){ 11 if(!activity.isFinishing()){ 12 activity.finish(); 13 } 14 } 15 } 16 }?
啟動活動技巧
在SecondActivity中添加一個actionStrat()
1 public class SecondActivity extends BaseActivity{ 2 public static void actionStart(Context context,String data1,String data2){ 3 Intent intent = new Intent(context,SecondActivity.class); 4 intent.putExtra("param1","data1"); 5 intent.putExtra("param2","data2"); 6 context.startActivity(intent); 7 } 8 ...... 9 }啟動SecondActivity
public void onClick(View v){SecondActivity.actionStart(FirstAcitivity.this,"data1","data2"); }? 殺死整個App
/** * 退出應用程序 */ public void AppExit(Context context) { try { ActivityCollector.finishAll(); ActivityManager activityMgr = (ActivityManager) context .getSystemService(Context.ACTIVITY_SERVICE); activityMgr.killBackgroundProcesses(context.getPackageName()); System.exit(0); } catch (Exception ignored) {} }雙擊退出程序兩個方法:
1)定義一個變量,來標識是否退出
// 定義一個變量,來標識是否退出 private static boolean isExit = false; Handler mHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);isExit = false;} };public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if (!isExit) {isExit = true;Toast.makeText(getApplicationContext(), "再按一次退出程序",Toast.LENGTH_SHORT).show();// 利用handler延遲發送更改狀態信息mHandler.sendEmptyMessageDelayed(0, 2000);} else {exit(this);}return false;} return super.onKeyDown(keyCode, event);}2)保存點擊時間:
/保存點擊的時間 private long exitTime = 0; public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if ((System.currentTimeMillis() - exitTime) > 2000) {Toast.makeText(getApplicationContext(), "再按一次退出程序",Toast.LENGTH_SHORT).show();exitTime = System.currentTimeMillis();} else {exit();}return false;}return super.onKeyDown(keyCode, event); }?
轉載于:https://www.cnblogs.com/yl-saber/p/6381339.html
總結
以上是生活随笔為你收集整理的Activity小技巧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UVa 1629 切蛋糕(记忆化搜索)
- 下一篇: Count on a tree