您好,登錄后才能下訂單哦!
對話框是程序運行中的彈出窗口。例如,當用戶要刪除一個聯系方式時,會彈出一個
對話框,讓用戶確認是否真的要刪除。
Android系統提供了四種對話框:警告對話框 (AlertDialog)、進度對話框(ProgressDialog)、日期選擇對話框(DatePickerDialog)和時間選擇對話框(TimePickerDialog)
警告對話框(AlertDialog)
AlertDialog是一個提示窗口,要求用戶作出選擇。該對話框中一般會有幾個選擇按鈕、標題信息和提示信息。
在程序中創建對話框需要如下步驟:
1、獲得 AlertDialog的靜態內部類 Builder 對象,由該類來創建對話框。
2、通過 Buidler對象設置對話框的標題、按鈕以及按鈕將要響應的事件。
3、調用Builder的createO方法創建對話框。
4、調用AlertDialog的showO方法顯示對話框。
實例代碼如下:
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView mytext=(TextView)this.findViewById(R.id.text1); final AlertDialog.Builder builder=new AlertDialog.Builder(this);//創建builder對象 Button btn1=(Button)this.findViewById(R.id.btn_main1); btn1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub builder.setMessage("Are you sure!") .setPositiveButton("OK",new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub mytext.setText("success"); } }).setNegativeButton("CANCEL",new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub mytext.setText("cancel"); } }); AlertDialog ad=builder.create(); ad.show(); } }); } }
效果如下,點擊按鍵后:
另一種對話框,如下代碼:
public class MainActivity extends Activity { private static final int menu1=Menu.FIRST; private static final int menu2=Menu.FIRST+1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView mytext=(TextView)this.findViewById(R.id.text1); final AlertDialog.Builder builder=new AlertDialog.Builder(this); final String[] message={"--------","*******","++++++++"}; Button btn1=(Button)this.findViewById(R.id.btn_main1); btn1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub //兩種不同風格的對話框 builder.setTitle("Please choose...") .setSingleChoiceItems(message, -1, new DialogInterface.OnClickListener() { //.setItems(message,new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub mytext.setText(message[arg1]); } }); AlertDialog ad=builder.create(); ad.show(); } }); } }
以上兩種模式如下圖:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。