Android之AlterDialog介绍
效果:

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介绍的更多相关文章
- Android sdk目录介绍
android sdk目录介绍 build-tools 各版本SDK编译工具 docs 离线开发者文档Android SDK API参考文档 extras 扩展开发包,如兼容架包. platforms ...
- 我的Android第三章:Android的组件介绍
小编摘录了Android文档介绍Android四大组件的基本内容,感觉文档的内容写的很详细所以小编将它写入了博客 Android 使用Java语言开发.Android SDK 工具编译代码-以及任意数 ...
- GitHub上排名前100的Android开源库介绍(来自github)
本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...
- android MVP模式介绍与实战
android MVP模式介绍与实战 描述 MVP模式是什么?MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数 ...
- Android 不同文件名介绍
Android 不同文件名介绍
- Android发展简单介绍
Android一词的本义指“机器人”,同一时候也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,号称是首个为移动 ...
- Android IntentService使用介绍以及源码解析
版权声明:本文出自汪磊的博客,转载请务必注明出处. 一.IntentService概述及使用举例 IntentService内部实现机制用到了HandlerThread,如果对HandlerThrea ...
- Android Jetpack 组建介绍(一)——Lifecycler
转自带你领略Android Jetpack组件的魅力 Android Jetpack 对于任何一个产品来说,我们开发中都会面对哪些问题?如:产品交互.用户体验.代码结构.数据获取.数据存储.网络优化. ...
- [原创]AndroBugs_Framework Android漏洞扫描器介绍
[原创]AndroBugs_Framework Android漏洞扫描器介绍 1 AndroBugs_Framework Android 漏洞扫描器简介 一款高效的Android漏洞扫描器,可以帮助开 ...
随机推荐
- 获取DOS命令的返回值.
procedure CheckResult(b: Boolean); begin if not b then raise Exception.Create(SysErrorMessage(GetLas ...
- awk 内容
awk相关内容 #只要文件中的路径,不要文件名: [ ...
- AIX rcp跨主机远程
rcp用途:在本地主机和远程主机之间或者两个远程主机之间传输文件.详细用法可man rcp查看. 现在要把主机10.200.5.200的/tmp/work.sh(属主为root用户)拷贝到远程主机18 ...
- (转)Oracle存储过程中的事务
本文转载自:http://www.cnblogs.com/linjiqin/archive/2011/04/18/2019990.html 1.事务用于确保数据的一致性,由一组相关的DML语句组成,该 ...
- 事务之二:spring事务(事务管理方式,事务5隔离级别,7个事务传播行为,spring事务回滚条件)
事物管理对于企业应用来说是至关重要的,好使出现异常情况,它也可以保证数据的一致性. spring支持编程式事务管理和声明式事务管理两种方式. 编程式事务管理使用TransactionTemplate或 ...
- 1050 String Subtraction
题意:给出两个字符串s1和s2,在s1中删去s2中含有的字符. 思路:注意,因为读入的字符串可能有空格,因此用C++的getline(cin,str).PAT系统迁移之后C语言中的gets()函数被禁 ...
- mysql 无意重启 [Note] /usr/sbin/mysqld: Normal shutdown
情况: 今早发现,昨天下午安装的4台mysql服务器,突然出现,由于在shell窗口 (root@localhost:mysql.sock) [(none)]> 190102 18:12:16 ...
- Excel开发学习笔记:查找与创建worksheet
开发环境基于VSTO,具体配置:visual studio 2010,VB .Net,excel 2007,文档级别的定制程序. 如题,我在ThisWorkbook.vb中添加了一个public函数来 ...
- 32位机,CPU是如何利用段寄存器寻址的
转自:http://blog.sina.com.cn/s/blog_640531380100xa15.html 32位cpu 地址线扩展成了32位,这和数据线的宽度是一致的.因此,在32位机里其实并不 ...
- BigDecimal进行精确运算demo工具类
package com.js.ai.modules.pointwall.interfac; import java.math.BigDecimal; public class TestDigDecim ...