`

Android学习之监听日期和时间的改变

 
阅读更多

main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" 
	android:layout_width="fill_parent"
	android:layout_height="fill_parent">
	<EditText 
		android:id="@+id/input"
		android:layout_width="fill_parent"
		android:layout_height="wrap_content"/>
	<LinearLayout 
		xmlns:android="http://schemas.android.com/apk/res/android"
		android:orientation="horizontal" 
		android:layout_width="fill_parent"
		android:layout_height="fill_parent">
		<DatePicker
			android:id="@+id/date"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" />
		<TimePicker
			android:id="@+id/time"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" />
	</LinearLayout>
</LinearLayout>

 

package org.lxh.demo;

import android.app.Activity;
import android.os.Bundle;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.EditText;
import android.widget.TimePicker;
import android.widget.TimePicker.OnTimeChangedListener;

public class MyDateTimeDemo extends Activity {
	private EditText input = null;
	private DatePicker date = null;
	private TimePicker time = null;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		super.setContentView(R.layout.main);
		this.input = (EditText) super.findViewById(R.id.input);
		this.date = (DatePicker) super.findViewById(R.id.date);
		this.time = (TimePicker) super.findViewById(R.id.time);
		this.time.setIs24HourView(true); // 采用24小时制显示时间
		this.time.setOnTimeChangedListener(new OnTimeChangedListenerImpl());
		this.date.init(this.date.getYear(), this.date.getMonth(),
				this.date.getDayOfMonth(), new OnDateChangedListenerImpl());
		this.setDateTime(); // 希望一开始可以设置一些文本的内容
	}

	private class OnTimeChangedListenerImpl implements OnTimeChangedListener {

		public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
			MyDateTimeDemo.this.setDateTime();
		}
	}

	private class OnDateChangedListenerImpl implements OnDateChangedListener {
		public void onDateChanged(DatePicker view, int year, int monthOfYear,
				int dayOfMonth) {
			MyDateTimeDemo.this.setDateTime();
		}
	}

	public void setDateTime() { // 由于日期时间更改之后文本输入组件的内容也要修改
		this.input.setText(this.date.getYear() + "-"
				+ (this.date.getMonth() + 1) + "-" + this.date.getDayOfMonth()
				+ " " + this.time.getCurrentHour() + ":"
				+ this.time.getCurrentMinute()); // 修改文本的内容
	}
}

 

 

分享到:
评论

相关推荐

    Android强大的日期时间选择控件

    例如,你可以设置滑动动画的速度,改变日期和时间的显示格式,甚至添加自定义的日期选择监听器,以便在用户选择新的日期或时间时执行特定操作。 DateSlider的一个显著特点是它的滑动手势,用户可以通过平滑滑动来...

    Android开发实战经典-020605-监听日期与时间的改变源代码和视频教程.zip

    Android开发实战经典_020605_监听日期与时间的改变源代码和视频教程.zip

    Android 日期和时间框合并

    3. Java/Kotlin实现:在代码中,我们需要监听`DatePicker`和`TimePicker`的改变事件,然后将选择的日期和时间组合成一个`Calendar`对象或`Date`对象。以下是一个简单的示例: ```java DatePicker datePicker = ...

    android模拟器下调整日期和时间

    在Android开发过程中,有时我们需要对应用进行测试,其中包括模拟用户在不同日期和时间下的操作,这时就需要在Android模拟器上调整系统日期和时间。本文将详细介绍如何在Android模拟器中进行这一操作,以及如何利用`...

    Android dialog显示日期和时间并选择显示

    要使用`DatePicker`,首先需要在布局文件中添加`DatePicker`控件,然后在代码中获取这个控件,并设置初始日期或监听日期改变事件。 ```xml android:id="@+id/date_picker" android:layout_width="wrap_content" ...

    android日期时间选择器

    2. 使用Calendar和Date对象:在处理日期和时间时,Android开发中常用的类是java.util.Calendar和java.util.Date。开发者需要了解如何使用这些类来设置、获取和操作日期和时间。 3. 自定义日期格式:在显示日期和...

    Android自定义日期选择器源码

    在Android开发中,系统默认的日期和时间选择器虽然实用,但往往无法满足所有场景的需求。因此,开发者经常需要自定义日期选择器来提供更符合应用风格或特定功能的交互体验。这篇内容将深入探讨如何在Android中创建一...

    Android 选择时间和日期

    // 监听日期改变 datePicker.init(2022, 9, 22, new DatePicker.OnDateChangedListener() { @Override public void onDateChanged(DatePicker view, int year, int month, int dayOfMonth) { // 处理日期变化逻辑...

    032_android UI组件之 时间日期控件DatePicker和TimePicker

    此外,DatePicker还可以通过监听日期改变事件来实时更新相关的数据或视图。 TimePicker组件则专注于时间选择,提供小时和分钟的滚动选择。同样,它也支持24小时制和12小时制(AM/PM)。开发者可以设定初始时间,并...

    Android应用源码之33.日期、时间控件学习.zip

    在Android应用开发中,日期和时间控件是不可或缺的部分...总之,这个压缩包的源码应该涵盖了上述的一些或全部知识点,通过学习和分析,开发者可以提升自己在Android应用中处理日期和时间的能力,实现更丰富的用户交互。

    android 日历控件 可选开始时间结束时间

    这通常需要通过监听日期改变的事件,然后在后台进行有效性检查。 3. **日期范围限制**: 在酒店预订的例子中,可能会存在最小入住天数和最大入住天数的限制,所以控件需要能够限制用户只能在允许的日期范围内选择。 ...

    android日期时间选择器(年月日时分秒)

    在Android开发中,用户界面经常需要提供日期和时间的选择功能,比如设置提醒、记录事件等。`android日期时间选择器(年月日时分秒)`是一个常见的需求,旨在为用户提供方便、直观的日期和时间选择体验。在这个场景下...

    android系统修改系统时间和日期源码

    根据提供的文件信息,本文将详细解析如何通过第三方 APK 修改 Android 系统的时间和日期,并深入探讨其实现原理。 ### 一、概述 在 Android 平台上,修改系统时间和日期的功能通常受到严格的限制,以防止恶意应用...

    android时间选择器,可进行农历阳历切换,带年月日时分

    在Android开发中,时间选择器通常用于用户交互,让用户能够方便地选取特定的日期和时间。这个特定的项目,名为“android时间选择器,可进行农历阳历切换,带年月日时分”,是一个基于Android Studio的开发项目,旨在...

    android自定义日期和时间的提示框

    在Android开发中,创建自定义的日期和时间提示框是一个常见的需求,这允许用户以直观的方式选择特定的日期和时间。对于初学者来说,理解如何实现这样的功能是至关重要的,因为这能提升用户体验并增强应用的交互性。...

    Android 自定义 弹框,日期选择器 弹框,年月日,时分,

    // 处理日期改变的逻辑 } }); timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() { @Override public void onTimeChanged(TimePicker view, int hourOfDay, int minute) { // 处理...

    日期和时间设置不小于当前时刻demo升级版

    在Android开发中,日期和时间的选择是常见的用户交互场景,比如在日程安排、会议预订等应用中。`DatePicker`和`TimePicker`是Android SDK提供的两种对话框组件,用于帮助用户选择日期和时间。本示例“日期和时间设置...

Global site tag (gtag.js) - Google Analytics