android中列表选项、单选选项、多选选项对话框的使用

本文主要介绍了 android中列表选项,单项选项,多项选型对话框的使用,其使用方法的代码如下:

  
  
  1. package com.demo.lc;
  2. import android.app.Activity;
  3. import android.app.AlertDialog;
  4. import android.content.DialogInterface;
  5. import android.os.Bundle;
  6. import android.view.View;
  7. import android.view.View.OnClickListener;
  8. import android.view.Window;
  9. import android.view.WindowManager;
  10. import android.widget.Button;
  11. import android.widget.Toast;
  12. public class DialogExercise extends Activity implements OnClickListener {
  13. private Button btn_item, btn_singleitem, btn_mutiplyitem;
  14. private String[] str = new String[5];
  15. private AlertDialog mDialog = null;
  16. private int mSelectedItem = 0;
  17. private boolean[] init = new boolean[] { false, true, false, false, false };
  18. private boolean[] mtemp = new boolean[5];
  19. @Override
  20. public void onCreate(Bundle savedInstanceState) {
  21. super.onCreate(savedInstanceState);
  22. super.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  23. WindowManager.LayoutParams.FLAG_FULLSCREEN);
  24. this.requestWindowFeature(Window.FEATURE_NO_TITLE);
  25. super.setContentView(R.layout.main);
  26. for (int i = 0; i < 5; i++) {
  27. str[i] = "item" + i;
  28. }
  29. for (int i = 0; i < init.length; i++) {
  30. mtemp[i] = init[i];
  31. }
  32. System.out.println(mtemp == init);
  33. this.btn_item = (Button) super.findViewById(R.id.btn_item);
  34. this.btn_singleitem = (Button) super.findViewById(R.id.btn_singleitem);
  35. this.btn_mutiplyitem = (Button) super.findViewById(R.id.btn_mutilitem);
  36. this.btn_item.setOnClickListener(this);
  37. this.btn_singleitem.setOnClickListener(this);
  38. this.btn_mutiplyitem.setOnClickListener(this);
  39. }
  40. @Override
  41. public void onClick(View v) {
  42. if (v == this.btn_item) {
  43. this.mDialog = new AlertDialog.Builder(this)
  44. .setTitle("列表选项")
  45. .setIcon(android.R.drawable.ic_dialog_alert)
  46. .setItems(str, new DialogInterface.OnClickListener() {
  47. @Override
  48. public void onClick(DialogInterface dialog, int which) {
  49. DialogExercise.this.mSelectedItem = which;
  50. }
  51. })
  52. .setPositiveButton("确定",
  53. new DialogInterface.OnClickListener() {
  54. @Override
  55. public void onClick(DialogInterface dialog,
  56. int which) {
  57. System.out.println("PositiveButton= "
  58. + which);
  59. Toast.makeText(DialogExercise.this,
  60. "您选择的是" + str[mSelectedItem], 100)
  61. .show();
  62. }
  63. })
  64. .setNegativeButton("取消",
  65. new DialogInterface.OnClickListener() {
  66. @Override
  67. public void onClick(DialogInterface dialog,
  68. int which) {
  69. System.out.println("NegativeButton= "
  70. + which);
  71. dialog.dismiss();
  72. }
  73. }).create();
  74. this.mDialog.show();
  75. } else if (v == this.btn_singleitem) {
  76. this.mDialog = new AlertDialog.Builder(this)
  77. .setTitle("单项选择")
  78. .setIcon(android.R.drawable.ic_dialog_alert)
  79. .setSingleChoiceItems(str, 2,
  80. new DialogInterface.OnClickListener() {
  81. @Override
  82. public void onClick(DialogInterface dialog,
  83. int which) {
  84. DialogExercise.this.mSelectedItem = which;
  85. }
  86. })
  87. .setPositiveButton("确定",
  88. new DialogInterface.OnClickListener() {
  89. @Override
  90. public void onClick(DialogInterface dialog,
  91. int which) {
  92. System.out.println("PositiveButton= "
  93. + which);
  94. Toast.makeText(DialogExercise.this,
  95. "您选择的是" + str[mSelectedItem], 100)
  96. .show();
  97. }
  98. })
  99. .setNegativeButton("取消",
  100. new DialogInterface.OnClickListener() {
  101. @Override
  102. public void onClick(DialogInterface dialog,
  103. int which) {
  104. System.out.println("NegativeButton= "
  105. + which);
  106. dialog.dismiss();
  107. }
  108. }).create();
  109. this.mDialog.show();
  110. } else if (v == this.btn_mutiplyitem) {
  111. this.mDialog = new AlertDialog.Builder(this)
  112. .setTitle("多项选择")
  113. .setIcon(android.R.drawable.ic_dialog_alert)
  114. .setMultiChoiceItems(str, init,
  115. new DialogInterface.OnMultiChoiceClickListener() {
  116. @Override
  117. public void onClick(DialogInterface dialog,
  118. int which, boolean isChecked) {
  119. }
  120. })
  121. .setPositiveButton("确定",
  122. new DialogInterface.OnClickListener() {
  123. @Override
  124. public void onClick(DialogInterface dialog,
  125. int which) {
  126. System.out.println("PositiveButton= "
  127. + which);
  128. String temp = " ";
  129. for (int i = 0; i < init.length; i++) {
  130. if (init[i]) {
  131. temp += str[i] + ", ";
  132. }
  133. }
  134. Toast.makeText(DialogExercise.this,
  135. "您选择的是" + temp, 100).show();
  136. for (int i = 0; i < init.length; i++) {
  137. init[i] = mtemp[i];
  138. }
  139. }
  140. })
  141. .setNegativeButton("取消",
  142. new DialogInterface.OnClickListener() {
  143. @Override
  144. public void onClick(DialogInterface dialog,
  145. int which) {
  146. System.out.println("NegativeButton= "
  147. + which);
  148. dialog.dismiss();
  149. }
  150. }).create();
  151. this.mDialog.show();
  152. }
  153. }
  154. }

效果如下:

当选择单项列表框时的截图:

单击确定后的效果如下:

当选择多项列表框时的截图:

点击确定后的效果如下:

本文出自 “开始跑” 博客,请务必保留此出处http://splend.blog.51cto.com/3717743/967180

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值