Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android中創建對話框(確定取消對話框、單選對話框、多選對話框)實例代碼

Android中創建對話框(確定取消對話框、單選對話框、多選對話框)實例代碼

編輯:關於Android編程

Android中可以創建三種對話框、確定取消對話框、單選對話框、多選對話框

android中的確定取消對話框演示示例


Android中使用單選對話框的演示案例


android中使用多選對話框的演示案例


實現代碼如下

修改activity_main.xml文件

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context="com.fyt.dialogdemo.MainActivity" 
android:orientation="vertical"> 
<Button 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="確定取消對話框" 
android:onClick="Clicked1"/> 
<Button 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="單選對話框" 
android:onClick="Clicked2"/> 
<Button 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="多選對話框" 
android:onClick="Clicked3"/> 
</LinearLayout>

最後修改MainActivity.Java中的代碼

package com.fyt.dialogdemo; 
import android.os.Bundle; 
import android.app.Activity; 
import android.app.AlertDialog; 
import android.app.AlertDialog.Builder; 
import android.content.DialogInterface; 
import android.content.DialogInterface.OnClickListener; 
import android.content.DialogInterface.OnMultiChoiceClickListener; 
import android.view.View; 
import android.widget.Toast; 
public class MainActivity extends Activity { 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
} 
//確定取消對話框按鈕響應函數 
public void Clicked1(View view) { 
//使用創建器創建單選對話框 
AlertDialog.Builder builder = new Builder(this); 
//設置對話框的圖標 
builder.setIcon(android.R.drawable.alert_light_frame); 
//設置對話框的標題 
builder.setTitle("欲練此功必先自宮"); 
//設置文本 
builder.setMessage("林平之,想清楚哦"); 
//設置確定按鈕 
builder.setPositiveButton("確定", new OnClickListener() { 
@Override 
public void onClick(DialogInterface dialog, int which) { 
Toast.makeText(MainActivity.this, "感謝使用本軟件,再見", Toast.LENGTH_SHORT).show(); 
} 
}); 
//設置取消按鈕 
builder.setNegativeButton("取消", new OnClickListener() { 
@Override 
public void onClick(DialogInterface dialog, int which) { 
Toast.makeText(MainActivity.this, "若不自宮,一定不成功", Toast.LENGTH_SHORT).show(); 
} 
}); 
//使用創建器生成一個對話框對象 
AlertDialog ad = builder.create(); 
ad.show(); 
} 
//單選對話框按鈕響應函數 
public void Clicked2(View view) { 
AlertDialog.Builder builder = new Builder(this); 
//設置單選對話框的標題 
builder.setTitle("請選擇性別"); 
//創建字符串數組,用來設置單選對話框中的條目 
final String[] items = {"男", "女"}; 
//創建單選對話框 
//第一個參數:單選對話框中顯示的條目所在的字符串數組 
//第二個參數:默認選擇的條目的下標(-1表示默認沒有選擇任何條目) 
//第三個參數:設置事件監聽 
builder.setSingleChoiceItems(items, -1, new OnClickListener() { 
//which:用戶所選的條目的下標 
//dialog:觸發這個方法的對話框 
@Override 
public void onClick(DialogInterface dialog, int which) { 
//使用吐司對話框提示用戶選擇的性別 
Toast.makeText( 
MainActivity.this, 
"您選擇的性別是:" + items[which], 
Toast.LENGTH_SHORT).show(); 
//關閉對話框 
dialog.dismiss(); 
} 
}); 
//顯示單選對話框 
builder.show(); 
} 
//多選對話框按鈕響應函數 
public void Clicked3(View view) { 
AlertDialog.Builder builder = new Builder(this); 
//設置多選對話框的標題 
builder.setTitle("請選擇您覺得帥的人"); 
//創建字符串數組,用於設置多選對話框中的選項 
final String[] items = { 
"侃哥", 
"趙帥哥", 
"趙老師", 
"趙師兄" 
}; 
//創建boolean數組,用於設置多選對話框中的條目是否被選中了 
final boolean[] checkedItems = { 
false, 
false, 
false, 
false 
}; 
//創建多選對話框 
//第一個參數:多選對話框中條目所在的字符串數組 
//第二個參數:條目是否被選中的標記所在的數組 
//第三個參數:創建事件監聽 
builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() { 
//which:用戶點擊的條目的下標 
//isChecked:用戶是選中該條目還是取消該條目 
@Override 
public void onClick(DialogInterface dialog, int which, boolean isChecked) { 
checkedItems[which] = isChecked; 
} 
}); 
//設置一個確定按鈕 
builder.setPositiveButton("確定", new OnClickListener() { 
@Override 
public void onClick(DialogInterface dialog, int which) { 
String text = ""; 
//記錄多選對話框中用戶選中的條目 
for(int i = 0; i < 4; i++) { 
text += checkedItems[i]? items[i] + "," : ""; 
} 
//使用吐司對話框顯示用戶選中的條目 
Toast.makeText(MainActivity.this, text, 0).show(); 
//隱藏多選對話框 
dialog.dismiss(); 
} 
}); 
//顯示多選對話框 
builder.show(); 
} 
} 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved