Let's see a
Activity_main.xml
<?XML version= "1.0" encoding= "Utf-8"?><LinearLayoutxmlns:android= "Http://schemas.android.com/apk/res/android"Android:layout_width= "Match_parent"Android:layout_height= "Match_parent"android:orientation= "vertical"> <ButtonAndroid:id= "@+id/button1"Android:layout_width= "Match_parent"Android:layout_height= "Wrap_content"Android:text= "Check dialog box" /> <ButtonAndroid:id= "@+id/button2"Android:layout_width= "Match_parent"Android:layout_height= "Wrap_content"Android:text= "Load dialog box" /> <ButtonAndroid:id= "@+id/button3"Android:layout_width= "Match_parent"Android:layout_height= "Wrap_content"Android:text= "Load dialog box showing progress" /> <ButtonAndroid:id= "@+id/button4"Android:layout_width= "Match_parent"Android:layout_height= "Wrap_content"Android:text= "Create dialog box is recommended"/></LinearLayout>
Dialogactivity.class
PackageZou.study.com.myfirstapp;ImportAndroid.app.Dialog;ImportAndroid.app.ProgressDialog;ImportAndroid.content.DialogInterface;ImportAndroid.os.Bundle;ImportAndroid.os.SystemClock;ImportAndroid.support.v7.app.AlertDialog;Importandroid.support.v7.app.AppCompatActivity;ImportAndroid.view.View;ImportAndroid.widget.Toast;Importzou.study.com.fragment.EditNameDialogFragment; Public classDialogactivityextendsAppcompatactivityImplementsview.onclicklistener{string[] Items= {"Google", "Apple", "Microsoft"}; Boolean[] itemchecked =New Boolean[Items.length]; ProgressDialog ProgressDialog; @Overrideprotected voidonCreate (Bundle savedinstancestate) {Super. OnCreate (savedinstancestate); Setcontentview (R.layout.activity_main); Initview (); } Private voidInitview () {Findviewbyid (r.id.button1). Setonclicklistener ( This); Findviewbyid (R.id.button2). Setonclicklistener ( This); Findviewbyid (R.id.button3). Setonclicklistener ( This); Findviewbyid (R.id.button4). Setonclicklistener ( This); } @Override Public voidOnClick (View v) {Switch(V.getid ()) { CaseR.id.button1://Normal Check dialog boxShowDialog (1); Break; CaseR.id.button2://Progress dialog Box FinalProgressDialog dialog = Progressdialog.show ( This, "Do something", "Please wait ..."); NewThread (NewRunnable () {@Override Public voidrun () {Systemclock.sleep (5000); Dialog.dismiss (); }}). Start (); Break; CaseR.id.button3://dialog box with progress adjustmentShowDialog (2); Progressdialog.setprogress (0); NewThread (NewRunnable () {@Override Public voidrun () { for(inti = 0;i <= 15;i++) {Systemclock.sleep (1000); Progressdialog.incrementprogressby (100/15); } Progressdialog.dismiss (); }}). Start (); Break; CaseR.id.button4://using Android 3.0 recommended to create dialog mode Dialogfragment here is just simple usage, want to know more please GoogleEditnamedialogfragment Editnamedialog =Neweditnamedialogfragment (); Editnamedialog.show (Getfragmentmanager (),"Editnamedialog"); Break; }} @OverrideprotectedDialog Oncreatedialog (intID) {Switch(ID) { Case1: Alertdialog.builder Builder=NewAlertdialog.builder ( This); Builder.seticon (R.mipmap.ic_launcher); Builder.settitle (Title); Builder.setpositivebutton ("OK",NewDialoginterface.onclicklistener () {@Override Public voidOnClick (Dialoginterface Dialog,intwhich) {Toast.maketext (Getbasecontext (),"OK clicked", Toast.length_short). Show (); } }); Builder.setnegativebutton ("Cancel",NewDialoginterface.onclicklistener () {@Override Public voidOnClick (Dialoginterface Dialog,intwhich) {Toast.maketext (Getbasecontext (),"Cancel Clicked", Toast.length_short). Show (); } }); Builder.setmultichoiceitems (items, itemchecked,NewDialoginterface.onmultichoiceclicklistener () {@Override Public voidOnClick (Dialoginterface Dialog,intWhich,BooleanisChecked) {Toast.maketext (Getbasecontext (), Items[which]+ (isChecked? ") checked! ":" unchecked! "), Toast.length_short). Show (); } }); returnbuilder.create (); Case2: ProgressDialog=NewProgressDialog ( This); Progressdialog.seticon (R.mipmap.ic_launcher); Progressdialog.settitle ("Downloading files ..."); Progressdialog.setprogressstyle (progressdialog.style_horizontal); Progressdialog.setbutton (Dialoginterface.button_positive,"OK",NewDialoginterface.onclicklistener () {@Override Public voidOnClick (Dialoginterface Dialog,intwhich) {Toast.maketext (Getbasecontext (),"OK clicked", Toast.length_short). Show (); } }); Progressdialog.setbutton (Dialoginterface.button_negative,"Cancel",NewDialoginterface.onclicklistener () {@Override Public voidOnClick (Dialoginterface Dialog,intwhich) {Toast.maketext (Getbasecontext (),"Cancel Clicked", Toast.length_short). Show (); } }); returnProgressDialog; } return NULL; }}
Editnamedialogfragment
Packagezou.study.com.fragment;Importandroid.app.DialogFragment;ImportAndroid.os.Bundle;Importandroid.support.annotation.Nullable;ImportAndroid.view.LayoutInflater;ImportAndroid.view.View;ImportAndroid.view.ViewGroup;ImportAndroid.view.Window;ImportZOU.STUDY.COM.MYFIRSTAPP.R; Public classEditnamedialogfragmentextendsdialogfragment {@Nullable @Override PublicView Oncreateview (layoutinflater inflater, @Nullable viewgroup container, Bundle savedinstancestate) {getdial OG (). requestwindowfeature (Window.feature_no_title); //Remove Action returninflater.inflate (R.layout.fragment_dialog,container); }}
Fragment_dialog.xml
<?XML version= "1.0" encoding= "Utf-8"?><Relativelayoutxmlns:android= "Http://schemas.android.com/apk/res/android"Android:layout_width= "Wrap_content"Android:layout_height= "Wrap_content" > <TextViewAndroid:id= "@+id/id_label_your_name"Android:layout_width= "Wrap_content"Android:layout_height= "32DP"android:gravity= "Center_vertical"Android:text= "Your Name:" /> <EditTextAndroid:id= "@+id/id_txt_your_name"Android:layout_width= "Match_parent"Android:layout_height= "Wrap_content"Android:layout_torightof= "@id/id_label_your_name"android:imeoptions= "Actiondone"Android:inputtype= "text" /> <ButtonAndroid:id= "@+id/id_sure_edit_name"Android:layout_width= "Wrap_content"Android:layout_height= "Wrap_content"Android:layout_alignparentright= "true"Android:layout_below= "@id/id_txt_your_name"Android:text= "OK" /></Relativelayout>
Learn to record, if there are errors please correct me thank you.
Learn Android from scratch-dialog