Android编程实现带有单选按钮和复选按钮的dialog功能示例

 更新时间:2017年09月25日 10:36:03   作者:ITzhongzi  
这篇文章主要介绍了Android编程实现带有单选按钮和复选按钮的dialog功能,结合具体实例形式分析了Android实现带有单选按钮的dialog对话框及带有复选按钮的dialog对话框相关操作技巧,需要的朋友可以参考下

本文实例讲述了Android编程实现带有单选按钮和复选按钮的dialog。分享给大家供大家参考,具体如下:

带有单选按钮的dialog:

package example.com.myapplication;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends Activity {
  //声明选中项变量
  private int selectedCityIndex = 0;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //定义城市数组
    final String[] arrayCity = new String[] { "杭州", "纽约", "威尼斯", "北海道" };
    //实例化AlertDialog对话框
    Dialog alertDialog = new AlertDialog.Builder(this)
        .setTitle("你最喜欢哪个地方?")            //设置标题
        .setIcon(R.mipmap.ic_launcher)        //设置图标
        //设置对话框显示一个单选List,指定默认选中项,同时设置监听事件处理
        .setSingleChoiceItems(arrayCity, 0, new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            selectedCityIndex = which;        //选中项的索引保存到选中项变量
          }
        })
        //添加取消按钮并增加监听处理
        .setNegativeButton("取消", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
          }
        })
        //添加确定按钮并增加监听处理
        .setPositiveButton("确认", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            Toast.makeText(getApplication(), arrayCity[selectedCityIndex], Toast.LENGTH_SHORT).show();
          }
        })
        .create();
    alertDialog.show();
  }
}

带有复选按钮的dialog代码:

package example.com.myapplication;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends Activity {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //定义运动数组
    final String[] arraySport = new String[] { "足球", "篮球", "网球", "乒乓球" };
    final boolean[] arraySportSelected = new boolean[] {false, false, false, false};
    //实例化AlertDialog对话框
    Dialog alertDialog = new AlertDialog.Builder(this)
        .setTitle("你喜欢哪些运动?")            //设置标题
        .setIcon(R.mipmap.ic_launcher)        //设置图标
        //设置对话框显示一个复选List,指定默认选中项,同时设置监听事件处理
        .setMultiChoiceItems(arraySport, arraySportSelected,
            new DialogInterface.OnMultiChoiceClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which, boolean isChecked) {
            arraySportSelected[which] = isChecked;       //选中项的布尔真假保存到选中项变量
          }
        })
        //添加取消按钮并增加监听处理
        .setPositiveButton("确认", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            StringBuilder stringBuilder = new StringBuilder();
            for (int i = 0; i < arraySportSelected.length; i++) {
              if (arraySportSelected[i] == true){
                stringBuilder.append(arraySport[i] + "、");
              }
            }
            Toast.makeText(getApplication(), stringBuilder.toString(), Toast.LENGTH_SHORT).show();
          }
        })
        //添加确定按钮并增加监听处理
        .setNegativeButton("取消", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
          }
        })
        .create();
    alertDialog.show();
  }
}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结

希望本文所述对大家Android程序设计有所帮助。

相关文章

  • Android Studio实现智能聊天

    Android Studio实现智能聊天

    这篇文章主要为大家详细介绍了Android Studio实现智能聊天,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • WebView的几个常见功能使用方法

    WebView的几个常见功能使用方法

    本篇文章介绍了WebView的几个常见功能,WebView的功能很强大,感兴趣的小伙伴们可以了解一下。
    2016-11-11
  • 深入理解Android 5.0中的Toolbar

    深入理解Android 5.0中的Toolbar

    相信大家都有所体会,搜索Toolbar相关文章满天飞,但是大都不是很全面,每次要用到的时候又要重头过滤一遍。而且随着版本升级很多较早的文章的方法已经失效,最近刚好好用到Toolbar,就将相关配置整理下,方便以后需要的时候或者有需要的朋友们参考学习。
    2017-01-01
  • Android利用Camera实现中轴3D卡牌翻转效果

    Android利用Camera实现中轴3D卡牌翻转效果

    这篇文章主要介绍了Android利用Camera实现中轴3D卡牌翻转效果,需要的朋友可以参考下
    2015-12-12
  • Android中创建类似Instagram的渐变背景效果

    Android中创建类似Instagram的渐变背景效果

    这篇文章主要介绍了Android中创建类似Instagram的渐变背景效果,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2017-12-12
  • Android 自定义开源库 EasyView实现详解

    Android 自定义开源库 EasyView实现详解

    这篇文章主要为大家介绍了Android自定义开源库EasyView实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Android 操作excel功能实例代码

    Android 操作excel功能实例代码

    这篇文章主要介绍了Android 操作excel功能实例代码 ,需要的朋友可以参考下
    2017-01-01
  • Flutter runApp GestureBinding使用介绍

    Flutter runApp GestureBinding使用介绍

    这篇文章主要为大家介绍了Flutter runApp GestureBinding使用介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Android实现伴奏录音合成MP3

    Android实现伴奏录音合成MP3

    这篇文章主要为大家详细介绍了Android实现伴奏录音合成MP3,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • 简单仿写Android控件SlidingMenu的实例代码

    简单仿写Android控件SlidingMenu的实例代码

    下面小编就为大家分享一篇简单仿写Android控件SlidingMenu的实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01

最新评论