效果:

1.简单对话框

AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
builder
.setTitle("对话框")
.setIcon(R.mipmap.ic_launcher_round)
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.setMessage("简单对话框")
.create()
.show();

  

2.列表对话框

        AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
final String[] mItems={"item0","item1","item2","item3","item4","item5","item6"};
builder.setTitle("列表对话框")
.setItems(mItems, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(AlterDialogActivity.this,mItems[i],Toast.LENGTH_SHORT).show();
}
})
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.create()
.show();

  

3.单选对话框

        AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
final String[] items={"item1","item2","item3","item4"};
builder.setTitle("单选对话框")
.setIcon(R.mipmap.ic_launcher_round)
.setSingleChoiceItems(items,0,new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(AlterDialogActivity.this,items[i]+"被点击了",Toast.LENGTH_SHORT).show();
singleChoise=i;
}
})
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.create()
.show();

  

4.多选对话框

        AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
final String[] items={"item1","item2","item3","item4"};
builder.setTitle("多选对话框")
.setIcon(R.mipmap.ic_launcher_round)
.setMultiChoiceItems(items,new boolean[]{false,false,false,false},new DialogInterface.OnMultiChoiceClickListener(){ @Override
public void onClick(DialogInterface dialogInterface, int i, boolean b) {
if(b){
Toast.makeText(AlterDialogActivity.this,items[i]+"被选中了",Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(AlterDialogActivity.this,items[i]+"被取消选中",Toast.LENGTH_SHORT).show();
}
}
})
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.create()
.show();

  

5.自定义View对话框

        AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
View view= LayoutInflater.from(this).inflate(R.layout.alterdialot_img,null);
builder
// .setTitle("自定义对话框")
// .setIcon(R.mipmap.ic_launcher_round)
.setView(view)
.setCancelable(true)
.setNegativeButton("取消",null)
.create()
.show();

  

代码:

xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"> <Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="click"
android:text="对话框" /> <Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="click"
android:text="列表对话框" /> <Button
android:id="@+id/button3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="click"
android:text="单选对话框" /> <Button
android:id="@+id/button4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="click"
android:text="多选对话框" /> <Button
android:id="@+id/button5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="click"
android:text="自定义对话框" />
</LinearLayout>

  activity

public class AlterDialogActivity extends AppCompatActivity {
// private AlertDialog.Builder builder;
private int singleChoise=0;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.act_alterlog);
// builder=new AlertDialog.Builder(this);
} public void click(View v){
switch (v.getId()){
case R.id.button://简单对话框
showDialog1();
break;
case R.id.button2://列表框
showDialog2();
break;
case R.id.button3://单选框
showDialog3();
break;
case R.id.button4://多选框
showDialog4();
break;
case R.id.button5://自定义contentview
showDialog5();
break;
}
} private void showDialog1() {
AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
builder
.setTitle("对话框")
.setIcon(R.mipmap.ic_launcher_round)
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.setMessage("简单对话框")
.create()
.show();
}
private void showDialog2() {
AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
final String[] mItems={"item0","item1","item2","item3","item4","item5","item6"};
builder.setTitle("列表对话框")
.setItems(mItems, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(AlterDialogActivity.this,mItems[i],Toast.LENGTH_SHORT).show();
}
})
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.create()
.show(); }
private void showDialog3() {
AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
final String[] items={"item1","item2","item3","item4"};
builder.setTitle("单选对话框")
.setIcon(R.mipmap.ic_launcher_round)
.setSingleChoiceItems(items,0,new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(AlterDialogActivity.this,items[i]+"被点击了",Toast.LENGTH_SHORT).show();
singleChoise=i;
}
})
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.create()
.show(); }
private void showDialog4() {
AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
final String[] items={"item1","item2","item3","item4"};
builder.setTitle("多选对话框")
.setIcon(R.mipmap.ic_launcher_round)
.setMultiChoiceItems(items,new boolean[]{false,false,false,false},new DialogInterface.OnMultiChoiceClickListener(){ @Override
public void onClick(DialogInterface dialogInterface, int i, boolean b) {
if(b){
Toast.makeText(AlterDialogActivity.this,items[i]+"被选中了",Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(AlterDialogActivity.this,items[i]+"被取消选中",Toast.LENGTH_SHORT).show();
}
}
})
.setPositiveButton("确定",null)
.setNegativeButton("取消",null)
.create()
.show(); }
private void showDialog5() {
AlertDialog.Builder builder=new AlertDialog.Builder(AlterDialogActivity.this);
View view= LayoutInflater.from(this).inflate(R.layout.alterdialot_img,null);
builder
// .setTitle("自定义对话框")
// .setIcon(R.mipmap.ic_launcher_round)
.setView(view)
.setCancelable(true)
.setNegativeButton("取消",null)
.create()
.show(); } }

  

Android之AlterDialog介绍的更多相关文章

  1. Android sdk目录介绍

    android sdk目录介绍 build-tools 各版本SDK编译工具 docs 离线开发者文档Android SDK API参考文档 extras 扩展开发包,如兼容架包. platforms ...

  2. 我的Android第三章:Android的组件介绍

    小编摘录了Android文档介绍Android四大组件的基本内容,感觉文档的内容写的很详细所以小编将它写入了博客 Android 使用Java语言开发.Android SDK 工具编译代码-以及任意数 ...

  3. GitHub上排名前100的Android开源库介绍(来自github)

    本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...

  4. android MVP模式介绍与实战

    android MVP模式介绍与实战 描述 MVP模式是什么?MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数 ...

  5. Android 不同文件名介绍

    Android 不同文件名介绍

  6. Android发展简单介绍

    Android一词的本义指“机器人”,同一时候也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,号称是首个为移动 ...

  7. Android IntentService使用介绍以及源码解析

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 一.IntentService概述及使用举例 IntentService内部实现机制用到了HandlerThread,如果对HandlerThrea ...

  8. Android Jetpack 组建介绍(一)——Lifecycler

    转自带你领略Android Jetpack组件的魅力 Android Jetpack 对于任何一个产品来说,我们开发中都会面对哪些问题?如:产品交互.用户体验.代码结构.数据获取.数据存储.网络优化. ...

  9. [原创]AndroBugs_Framework Android漏洞扫描器介绍

    [原创]AndroBugs_Framework Android漏洞扫描器介绍 1 AndroBugs_Framework Android 漏洞扫描器简介 一款高效的Android漏洞扫描器,可以帮助开 ...

随机推荐

  1. 用Toast来增加调试效率的小技巧

    import android.content.Context; import android.widget.Toast; /** * Created by apple on 10/7/15. */ p ...

  2. SERDES高速系统(二)

    抖动.容忍度与功耗 前面我提到SERDES的最终性能要用传输速率和传输距离考核.使用眼图可以形象化地衡量SERDES的收发性能,但是更为精确的参数化衡量手段是抖动(Jitter).容忍度(Tolera ...

  3. FPGA前世今生(四)

    前几期我们一直介绍FPGA内部资源,今天我们将用最后的篇幅来介绍剩下的内部资源部分,结束我们FPGA的前世今生.之所以起名字为FPGA前世今生,其实就是介绍一下FPGA内部资源,前世的内部结构资源就不 ...

  4. mysql复制原理与机制一

    复制原理:复制需要二进制日志记录数据库上的改变 slave的IO线程复制把master上的Binary log读取到本地的relay log里SQL线程负责把relay log恢复到数据库数据里 sh ...

  5. 【转】Jmeter之GUI运行原理

    一.一语道破jmeter 大家都知道我们在应用jmeter的图形化界面来进行操作,保存后生成的是一个.jmx文件. 那么这个.jmx文件中都是些什么呢. <?xml version=" ...

  6. java代码实现点击鼠标从控制台输出信息

    总结:最难的就是当我们需要点击按钮时去实现某个功能-----------因为那个我没有理解透,是涉及整个程序的 package com.a.b; import javax.swing.*; impor ...

  7. 杂项-操作系统-百科:Solaris

    ylbtech-杂项-操作系统-百科:Solaris Solaris (读作 /se'laris:/ 或者 /so'le:ris/)是Sun Microsystems研发的计算机操作系统.它被认为是U ...

  8. ejs的简单应用

    获取数据 var init = function(){ api.my_bean_list({ },function(datas){ console.log(datas); if (datas.errn ...

  9. JSP搭建

    Tomcat7已经发布多时,Tomcat7增加了对Servlet 3.0,JSP 2.2和JSP-EL 2.2的支持.支持web application内存泄露的检测和防护等很多新功能.本片教程主要介 ...

  10. Python 列表学习笔录

    列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类 ...