文档章节

各种常用的基本对话框的基本使用

初来小修
 初来小修
发布于 2016/01/23 16:11
字数 1238
阅读 29
收藏 0
 AlertDialog对话框的基本使用
//功能:单击一个按钮控件弹出一个对话框
//该对话框使用很平凡 -- 比较灵活想在哪里用就在哪里创建
1、在res/layout里布局一个按钮
代码:
<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"
    android:orientation="vertical" >
    <Button
        android:id="@+id/alertdialog"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onclickButton"
        android:text="alertdialog对话框" />
</LinearLayout>
--------------------------
2、在MainActivity 类里
代码:
AlertDialog.Builder builder = new AlertDialog.Builder(this);//创建一个对话框
   builder.setTitle("提示");//设置对话框的标题
   builder.setIcon(R.drawable.ic_launcher);//设置对话框标题旁边的图片
   builder.setMessage("确定退出?");//设置对话框的内容
   //setNegativeButton方法 -- 设置AlertDialog对话框的取消按钮
   //第一个参数 -- AlertDialog对话框取消按钮要设置的文字
   //第二个参数 -- 点击该取消按钮的事件监听 -- 什么也不做 -- 可以设置为null
   builder.setNegativeButton("取消", new OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
     Toast.makeText(MainActivity.this, "取消", Toast.LENGTH_SHORT).show();
    }
   });
   //setPositiveButton方法 -- 设置AlertDialog对话框的确定按钮
   //第一个参数 -- AlertDialog对话框确定按钮要设置的文字
   //第二个参数 -- 点击该确定按钮的事件监听 -- 什么也不做 -- 可以设置为null
   builder.setPositiveButton("确定", new OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
     Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();
    }
   });
            //setNeutralButton方法 -- 设置AlertDialog对话框的中立按钮
   //第一个参数 -- AlertDialog对话框中立按钮要设置的文字
   //第二个参数 -- 点击该中立按钮的事件监听 -- 什么也不做 -- 可以设置为null
   builder.setNeutralButton("中立", new OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
     Toast.makeText(MainActivity.this, "中立", Toast.LENGTH_SHORT).show();
    }
   });
   //AlertDialog对话框的显示 
   builder.show();
=========================================================

 

ProgressDialog对话框的创建和简单使用

代码

ProgressDialog progressdialog = new ProgressDialog(this);//创建一个ProgressDialog对话框
   progressdialog.setTitle("提示");//设置ProgressDialog对话框的标题
   progressdialog.setIcon(R.drawable.ic_launcher);//设置ProgressDialog对话框标题旁边的图片
   progressdialog.setMessage("progressdialog...");//设置ProgressDialog对话框的内容
   progressdialog.show();//显示ProgressDialog对话框
   progressdialog.dismiss();//隐藏ProgressDialog对话框
   

========================================================

 


DatePickerDialog(年,月,日)时间对话框的创建和基本使用
Calendar calendar = Calendar.getInstance();//获取当前时间
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
//创建一个时间对话框
//第一个参数 -- 上下文
//第二个参数 -- 时间对话框选择时间的监听
//第三个参数 -- 当前时间的 -- 年
//第四个参数 -- 当前时间的 -- 月
//第五个参数 -- 当前时间的 -- 日
DatePickerDialog datepincker = new DatePickerDialog(this, new OnDateSetListener() {
    
    //第一个参数 -- DatePickerDialog时间对话框的视图
    //第二个参数 -- 当前选择的 -- 年
    //第三个参数 -- 当前选择的 -- 月
    //第四个参数 -- 当前选择的 -- 日
    
    //注意:月份要加1 因为月份从0算的
    @Override
    public void onDateSet(DatePicker view, int year, int monthOfYear,
      int dayOfMonth) {
     String dateString = year + "年" + monthOfYear + "月" + dayOfMonth + "日";
     Toast.makeText(MainActivity.this, dateString, Toast.LENGTH_SHORT).show();
    }
   }, year, month, day);
   //显示DatePickerDialog时间对话框
   datepincker.show();

 

效果图示例:

===================================================================
TimePickerDialog时间对话框(小时,分钟)简单创建和基本使用
//获取当前时间
Calendar calendar = Calendar.getInstance();
int hour = calendar.get(Calendar.HOUR_OF_DAY);
INT minute = calendar.get(Calendar.MINUTE);
//创建一个TimePickerDialog时间对话框
//第一个参数 -- 上下文
//第二个参数 -- 时间对话框的事件监听
//第三个参数 -- 当前的 -- 小时
//第四个参数 -- 当前的 -- 分钟
//第四个参数 -- 是否是24小时制
TimePickerDialog timepicker = new TimePickerDialog(this, new OnTimeSetListener() {
  

//第一个参数 -- TimePickerDialog时间对话框视图
//第二个参数 -- 选择的 -- 小时
//第三个参数 -- 选择的 -- 分钟  
    @Override
    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
     String date_time = hourOfDay + ":" + minute ;
     Toast.makeText(MainActivity.this, date_time, Toast.LENGTH_SHORT).show();
    }
   }, hour, minute, true);
   //显示TimePickerDialog时间对话框
   timepicker.show();

 

效果图示例

 

================================================================

自定义对话框的简单创建和基本使用

//注意:自定义对话框是在AlertDialog基础上实现的 用得挺多的
//功能:登录对话框
1、先在res/layout里布局登录的界面 login_activity.xml布局文件

代码

<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"
    android:orientation="vertical" >

    <EditText
        android:id="@+id/edit_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入用户名" />

    <EditText
        android:id="@+id/edit_password"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入密码"
        android:inputType="textPassword" />


</LinearLayout>
----------------
2、创建自定义对话框

代码

AlertDialog.Builder builder = new AlertDialog.Builder(this);//this -- 上下文
builder.setTitle("登录对话框");//自定义对话框的标题
builder.setIcon(R.drawable.ic_launcher);//设置自定义对话框标题旁边的图片
//使用填充器找到登录对话框的布局文件名
View login = LayoutInflater.from(this).inflate(R.layout.login_activity,null);
//找到登录布局文件名后在找该布局里面的控件名
final EditText edit_name = (EditText) login.findViewById(R.id.edit_name);
final EditText edit_password = (EditText) login.findViewById(R.id.edit_password

builder.setView(login);//设置自定义对话框的视图 -- 把找到的自定义登录布局放到里面就可以
//自已的对话框的确定按钮 时间监听
 builder.setPositiveButton("确定", new OnClickListener() {
    
    @Override
    public void onClick(DialogInterface dialog, int which) {
     String name = edit_name.getText().toString();
     String password = edit_password.getText().toString();
    
    setTitle(name + "::" + password);
    }
   });
   //取消按钮
   builder.setNegativeButton("取消", null);
   //显示自定义对话框
   builder.show();

 

效果图示例

 

© 著作权归作者所有

初来小修
粉丝 4
博文 117
码字总数 80711
作品 0
广州
私信 提问
马上要考试了,不知道如何复习,希望各位前辈能指点下~

我是个只玩打游戏的电脑小白,马上要考试了,不知道如何复习,而且让我临时抱佛脚也只有一个半月的时间了,希望各位前辈能指点下,这下面就是我要考试的知识点- -虽然看起来都是基础,但是我...

panhao
2011/06/27
1K
16
【Windows编程】系列第八篇:通用对话框

上一篇我们学习了菜单的基本编程,本篇来了解一下通用对话框的使用。Windows系统之所以是目前最流行的桌面系统,也是因为Windows有一套标准化,统一友好的交互界面,比如菜单、工具栏、状态栏...

yang_danny
2015/08/06
0
1
跨平台布局组件--FMXUI

【简介】 FMXUI的开发忠旨是发掘FMX界面设计的优点,再整合进入Android界面设计的优点。使用过Java搞Android界面设计朋友看到后应该会有一定的熟悉感。 【类介绍】 TView 基本视图 TViewGro...

YangYxd
2016/12/30
330
0
Android 对话框 AlertDialog

本讲介绍一下Android基本组件:对话框AlertDialog。 API: java.lang.Object ↳ android.app.AlertDialog.Builder 使用AlertDialog.Builder创建对话框需要了解以下几个方法: setTitle :为对...

无鸯
2011/12/17
1K
1
【Android】对话框 AlertDialog

本讲介绍一下Android基本组件:对话框AlertDialog。 API: java.lang.Object ↳ android.app.AlertDialog.Builder 使用AlertDialog.Builder创建对话框需要了解以下几个方法: setTitle :为对...

晨曦之光
2012/03/01
330
1

没有更多内容

加载失败,请刷新页面

加载更多

如何远程调试部署在CloudFoundry平台上的nodejs应用

网络上关于如何本地调试nodejs应用的教程已经很多了,工具有Chrome开发者工具,Visual Studio Code,和nodejs周边的一些小工具等等。 在实际情况中,我们可能遇到本地运行良好,但是部署到C...

JerryWang_SAP
20分钟前
0
0
微信扫码访问网站调用默认浏览器打开如何实现?

我们在微信内分享链接或二维码的时候,我们会发现我们的网站是可以在浏览器里正常打开的,但就是不能在微信里打开,提示 “ 已停止访问该网页 ”,无论是聊天框也一样。说是系统检测到您的网...

明尼苏达哈士奇
28分钟前
1
0
一份Java程序员进阶架构师的秘籍,你离架构师还差多远

一、如何定义架构师 Java架构师,首先要是一个Java程序员,熟练使用各种框架,并知道它们实现的原理。jvm虚拟机原理、调优,懂得jvm能让你写出性能更好的代码;池技术,什么对象池,怎么解决并...

我最喜欢三大框架
36分钟前
0
0
想说再见不容易,win7最新市占率依然超36%

微软正在通过努力让Windows 7用户升级至Windows 10,不过从目前的市占率来看,他们还是要加把劲了。 据最新的市场份额看,Windows 10在本月的市场份额有所提升,从43.62%增长到44.10%。另一...

linuxCool
47分钟前
4
0
SQL的优化

对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 对查询进行优化,要尽量避免全表扫描,首先应考虑在进行条件判断的字段上创建了索引。 应尽量避...

咸鱼-李y
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部