Android探究2:Android 5.0下 Dialog&AlertDialog 並不會影響Activity的生命周期
阿新 • • 發佈:2018-04-01
lac wid cancel test () onclick posit make div
先給出結論:Dialog和AlertDialog並不會影響到Activity的生命周期,但會影響到Activity的優先級。
核心代碼:
onCreated中: Resources resources = this.getResources(); DisplayMetrics displayMetrics = resources.getDisplayMetrics(); final int widthPixels = displayMetrics.widthPixels / 2; final int heightPixels = displayMetrics.heightPixels / 2;//1 //Android 5.0下 Dialog&AlertDialog 並不會影響Activity的生命周期 FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)// .setAction("Action", null).show(); //test Dialog // EditText editText = new EditText(ScrollingActivity.this); // editText.setLayoutParams(new ViewGroup.LayoutParams(widthPixels, heightPixels)); // Dialog dialog = new Dialog(ScrollingActivity.this);// dialog.setContentView(editText); // dialog.setTitle("標題"); // dialog.setCanceledOnTouchOutside(false); // dialog.show(); //test Dialog AlertDialog.Builder builder = new AlertDialog.Builder(ScrollingActivity.this); builder.setTitle("彈窗") .setMessage("Msg") .setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }).setPositiveButton("Yes", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); ; } }).setCancelable(false); builder.create().show(); } }); In Activity: @Override protected void onStart() { super.onStart(); System.out.println("ScrollingActivity.onStart"); } @Override protected void onResume() { super.onResume(); System.out.println("ScrollingActivity.onResume"); } @Override protected void onPause() { super.onPause(); System.out.println("ScrollingActivity.onPause"); } @Override protected void onStop() { super.onStop(); System.out.println("ScrollingActivity.onStop"); }
有興趣的同誌可以新建個Activity體驗一下。
Android探究2:Android 5.0下 Dialog&AlertDialog 並不會影響Activity的生命周期