Android探究2(Android 5.0下 Dialog&AlertDialog 并不会影响Activity的生命周期)

缥帙各舒散,前后互相逾。这篇文章主要讲述Android探究2:Android 5.0下 Dialog& AlertDialog 并不会影响Activity的生命周期相关的知识,希望能为你提供帮助。
【Android探究2(Android 5.0下 Dialog& AlertDialog 并不会影响Activity的生命周期)】先给出结论: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体验一下。

    推荐阅读