安卓开发中时间对话框的调用

安卓开发中,经常会使用到时间对话框。通常都是在一个EditText中选择日期。下面我们一起学习下时间对话框的使用方法。

1.首先,自己在对应的XML文件中设置两个控件,一个TextView,一个EditText。在activity中编写对EditText的操作。

2.声明变量(年月日)以及txtTime(EditText控件,用来显示时间)并相应的对其初始化。

TextView tvInTime;
EditText  txtInTime;
// 年月日
private int mYear;
private int mMonth;
private int mDay;
tvInTime =(TextView)  findViewById(R.id.tvInTime);
txtInTime = (EditText) findViewById(R.id.txtInTime);

3.为时间文本框设置点击响应事件

// 为时间文本框设置单击监听事件
txtInTime.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// 显示日期选择对话框
showDialog(DATE_DIALOG_ID);
}
});

4.初始化日历对象,并且显示系统当前时间。

// 初始化Calendar日历对象
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);// 获取年份
mMonth = c.get(Calendar.MONTH);// 获取月份
mDay = c.get(Calendar.DAY_OF_MONTH);// 获取天数
// 显示当前系统时间
updateDisplay();

5.自定义方法显示时间。

// 使用OnDateSetListener监听器设置系统时间对话框
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear = year;// 为年份赋值
mMonth = monthOfYear;// 为月份赋值
mDay = dayOfMonth;// 为天赋值
updateDisplay();// 显示设置的日期
}

};
/** 自定义方法显示系统时间 */
private void updateDisplay() {
// 显示设置的时间
txtInTime.setText(new StringBuilder().append(mYear).append("-")
.append(mMonth + 1).append("-").append(mDay));
}

当然,在XML文件中肯定需要一些其他的控件,比如说按钮,这些就自己设定,并设置相对应的方法就行了。这里只是简单介绍时间对话框的弹出以及自己自由选择的方法。

时间: 2024-10-17 06:03:22

安卓开发中时间对话框的调用的相关文章

安卓开发中非常炫的效果集合

文章转自:一点点征服的 http://www.cnblogs.com/ldq2016/p/5217590.html 安卓开发中非常炫的效果集合 这几天开发的时候,想做一些好看而且酷炫的特效,于是又开始从网上收集各种特效资源.下面给大家一些我喜欢的把,附代码,喜欢的看源代码,然后加到自己项目去把!! 一个开源项目网站有很多炫酷效果http://itlanbao.com/codes.aspx#1,0 所有效果Dome下载地址:https://github.com/20994842/A-collect

安卓开发中的双日期选择控件(可隐藏日,只显示年月)

在安卓开发中,会碰到选开始日期和结束日期的问题.特别是在使用Pad时,如果弹出一个Dialog,能够同时选择开始日期和结束日期,那将是极好的.我在开发中在DatePickerDialog的基础上做了修改,实现了这种Dialog.效果如下: 具体实现方法为: 先新建一个安卓项目DoubleDatePicker,在res/layout文件夹下新建date_picker_dialog.xml,内容如下: 1 <?xml version="1.0" encoding="utf-

在安卓开发中使用SQLite数据库操作实例

前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tc

安卓开发中的重力感应传感器

安卓开发中拥有多种传感器,google提供了11种传感器供应用层使用:加速度.磁力.方向.陀螺仪.光线.压力(返回当前压强).温度.接近(检测物体与手机的距离).重力.线性加速度和旋转矢量.     在使用传感器之前,需要将工程中的类接口到SensorEventListener,接口后会有两个重载方法来进行监听,并取得感应检测Sensor状态.其中onAccuracyChanged()方法在感应检测到Sensor的精密度有变化时被调用,onSensorChanged()方法是在感应检测到Sens

安卓开发中使用Genymotion模拟器

在安卓开发中,运行和调试自己所写的安卓程序需要用到模拟器 在一般情况下 是直接在这创建一个模拟器,但是这种自带的模拟器运行效率不佳,而且启动时间漫长 所以,我们可以换一款安卓模拟器 Genymotion安卓模拟器.详情百度 官网地址:https://www.genymotion.com/ 1.Genymotion下载安装完成 2.在eclipse中配置调用Genymotion 官网对于eclipse中插件的安装方法 要安装Genymotion的Eclipse插件 在Eclipse中,去帮助/安装

安卓开发中我们常用的布局方式

在安卓开发中我们常用的布局方式有这么几种: 1.LinearLayout ( 线性布局 ) :(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角) 线性布局分为水平线性和垂直线性二者的属性分别为: android:orientation= " horizontal " android:orientation= "vertical" . 2.RelativeLayout ( 相对布局 ) : (里面可以放多个控件,但是一行只能放一个控件) 附加几类

安卓开发中内存问题分析(一)工具篇

内存泄漏和内存溢出是安卓开发中经常碰到的问题,如何能够快速有效的发现并追踪内存泄漏或者内存溢出的源头,是每个开发者都需要掌握的技巧,今天我给大家带来常见的内存分析工具使用方法,希望对大家今后的开发带来帮助. 使用Eclipse分析应用内存使用情况 具体步骤如下: 1.启动eclipse后,切换到DDMS透视图,并通过Window-ShowView打开Devices视图.Heap视图 2.连接手机或者模拟器后,在DDMS的Devices视图中将会显示手机设备或模拟器的序列号,以及设备中正在运行的部

安卓开发中遇到耗电量高的问题解决方案

在安卓开发中,遇到bug是可以修复的,通过日志,或者调试各种方法都是可以解决的.但是耗电量高的问题,你又如何解决的呢? 这个问题第一次遇见,会觉得无从下手,没有丝毫的头绪.但问题出现了,必须要硬着头皮去解决了. 首先先检查手机什么最耗电,手机设定->更多->电池,看到了哪些应用耗电的情况.确定耗电的事实. 其次,我们要检查为什么它这么耗电,建议你下个超级终端,这就要有些linux的知识了,运行top -m 5 -t, 显示出按cpu大小列出5个进程列表.可以看到是哪个进程,cpu的使用率高,相

在iOS开发中,经常需要调用其它App,如拨打电话、发送邮件等。UIApplication:openURL:方法是实现这一目的的 ##转

源地址:http://blog.csdn.net/lengshengren/article/details/16339409 在iOS开发中,经常需要调用其它App,如拨打电话.发送邮件等.UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的模式来调用不同的App. 通过openURL方法可以调用如下应用: 调用谷歌地图(Google Maps) 调用邮件客户端(Apple Mail) 拨号(Phone Number) 调用短信(SMS)