`
yettie
  • 浏览: 196468 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android 日期和时间选择控件的开发

阅读更多

Android 日期和时间选择控件的开发

一个日期和时间选择控件的例子。来自谷歌开发文档,整合了两个小例子。

import java.util.Calendar;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;
import android.widget.TimePicker;

public class DatePickerActivity extends Activity {
	private TextView mDateDisplay;
	private Button mPickDate;
	private TextView mTimeDisplay;
	private Button mPickTime;
	private int mYear;
	private int mMonth;
	private int mDay;
	private int mHour;
	private int mMinute;

	static final int DATE_DIALOG_ID = 0;
	static final int TIME_DIALOG_ID = 1;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {

		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		// capture our View elements
		mDateDisplay = (TextView) findViewById(R.id.dateDisplay);
		mPickDate = (Button) findViewById(R.id.pickDate);
		mTimeDisplay = (TextView) findViewById(R.id.timeDisplay);
		mPickTime = (Button) findViewById(R.id.pickTime);

		// add a click listener to the button
		mPickDate.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				showDialog(DATE_DIALOG_ID);
			}
		});
		mPickTime.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				showDialog(TIME_DIALOG_ID);
			}
		});

		// get the current date
		final Calendar c = Calendar.getInstance();
		mYear = c.get(Calendar.YEAR);
		mMonth = c.get(Calendar.MONTH);
		mDay = c.get(Calendar.DAY_OF_MONTH);
		// get the current time
		final Calendar cc = Calendar.getInstance();
		mHour = cc.get(Calendar.HOUR_OF_DAY);
		mMinute = cc.get(Calendar.MINUTE);

		// display the current date (this method is below)
		updateDisplay();

	}

	// updates the date in the TextView
	private void updateDisplay() {
		mDateDisplay.setText(new StringBuilder()
				// Month is 0 based so add 1
				.append(mMonth + 1).append("-").append(mDay).append("-")
				.append(mYear).append(" "));
		mTimeDisplay.setText(new StringBuilder().append(pad(mHour)).append(":")
				.append(pad(mMinute)));

	}

	private static String pad(int c) {
		if (c >= 10)
			return String.valueOf(c);
		else
			return "0" + String.valueOf(c);
	}

	// the callback received when the user "sets" the date in the dialog
	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();
		}
	};
	// the callback received when the user "sets" the time in the dialog
	private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() {
		public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
			mHour = hourOfDay;
			mMinute = minute;
			updateDisplay();
		}
	};

	@Override
	protected Dialog onCreateDialog(int id) {
		switch (id) {
		case DATE_DIALOG_ID:
			return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,
					mDay);
		case TIME_DIALOG_ID:
			return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute,
					false);

		}
		return null;
	}
}
 
分享到:
评论
1 楼 蓝月儿 2012-09-06  
有没有效果图呢 学习 学习

相关推荐

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

    在Android开发中,日期时间选择控件是用户界面中常见且重要的组成部分,它允许用户方便地选择日期或时间。在Android SDK中,内置了DatePicker和TimePicker两种原生控件,但有时候,开发者可能需要更加强大、定制化的...

    android 日期区间选择控件

    在Android开发中,日期区间选择控件是一种常用的用户界面组件,尤其在预订系统、日程管理等场景下不可或缺。本文将深入探讨如何实现一个能够选取年月区间的自定义控件,以及涉及到的相关技术点。 首先,我们需要...

    Android日期时间选择控件

    2. **组合功能**:将日期和时间选择功能整合到一个控件中,使得用户能一次性完成日期和时间的设定,简化操作流程。 3. **可定制性**:开发者可以根据项目需求,定制控件的颜色、字体、动画效果等,使其更好地融入...

    Android自定义滚轮式日期(时间)选择控件

    在Android开发中,为了提供用户友好的交互体验,开发者经常需要自定义各种控件,其中滚轮式日期和时间选择控件是一种常见的需求。这种控件通常用于设置事件的日期和时间,比如日历应用、闹钟设定等场景。本文将深入...

    Android漂亮的日期选择控件

    在Android应用开发中,UI设计和用户体验是至关重要的部分,其中日期选择控件是一个常见的功能需求,例如在日程安排、生日输入等场景。本文将详细介绍一个名为"Android漂亮的日期选择控件"的资源,它提供了美观且易于...

    android 日期 时间 选择控件

    在Android开发中,日期和时间选择控件是用户界面中常见的元素,用于让用户方便地选取日期或时间。本文将深入探讨Android系统中的日期和时间选择控件,以及如何在应用程序中实现它们。 首先,Android提供了两种主要...

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

    在Android开发中,日历控件是经常被用于创建日期选择功能的重要组件,尤其是在预订、计划等场景下,用户需要设定一个开始时间和结束时间。"android 日历控件 可选开始时间结束时间"这个标题所提及的就是这样一个特定...

    移动端日期和时间选择控件lCalendar-master.zip

    在移动应用开发中,日期和时间选择控件是不可或缺的一部分,它们用于用户输入或选择日期和时间,常见于各种表单、日历应用或者预订系统等。`lCalendar-master`是一个专为移动端设计的日期和时间选择器,适用于...

    android 时间日期控件

    在这个例子中,有两个Button用于打开日期选择器和时间选择器,以及一个TextView用于展示选定的时间。以下是一个简单的布局示例: ```xml <LinearLayout xmlns:android=...

    Android炫酷的星期日期选择控件RollWeekView

    综上所述,创建一个如"RollWeekView"这样的自定义日期选择控件涉及到Android自定义视图、动画、触摸事件处理等多个技术点。通过巧妙地组合这些技术,我们可以构建出一个既实用又美观的UI组件,提升应用的整体体验。...

    Android 日期和时间选择器合并

    在Android应用开发中,日期和时间选择器是用户界面中常见的元素,用于让用户方便地选取特定的日期和时间。在Android SDK中,提供了多种方式来实现这种功能,包括使用原生的DatePicker和TimePicker对话框,或者是...

    2021-辅助类库-Android 非常漂亮的滚动选择日期控件.zip

    综上所述,"2021-辅助类库-Android 非常漂亮的滚动选择日期控件.zip"为Android开发者提供了一个美观、实用的日期选择组件,同时也是一份深入学习Android自定义视图和时间日期处理的宝贵资料。通过研究和应用这个控件...

    移动端日期时间选择控件

    在移动端应用开发中,日期时间选择控件是一个非常常见的组件,它允许用户方便地选取日期和时间,广泛应用于各种场景,如预约、日程安排、表单填写等。本话题将深入探讨移动端日期时间选择控件的设计原理、实现方式...

    自定义日期和时间同时控件

    它结合了日期选择器和时间选择器的功能,提供了一个统一的界面,让用户在一个操作中完成日期和时间的设定。 该控件的核心是`WheelView`,这是一个可滚动的选择器组件,常用于数字或选项的滚动选择。在这里,`...

    Android 日期选择控件

    在Android开发中,日期选择控件是用户界面中常见的组件,用于让用户方便地选取日期。在给定的“Android 日期选择控件”主题中,我们关注的是一个特别设计的控件,它允许用户通过上下滑动的方式进行交互,并且在选定...

    android好看的日期选择控件

    传统的Android日期选择器通常使用DatePicker,但它在设计上可能显得较为简陋,不符合现代移动应用的审美标准。因此,开发者经常寻找自定义或第三方库来增强日期选择器的外观和功能。 本文将详细介绍如何在Android中...

    android时间日期选择控件,仿小米

    在Android开发中,时间日期选择控件是应用中常见的组件,用于用户输入或选择日期和时间。本项目基于`wheelView`实现了一个自定义的时间日期选择控件,它已封装为一个可重用的`View`,适用于`AlertDialog`和`...

    android 调用日期和时间控件

    Android系统提供了多种内置的日期和时间选择器,可以帮助开发者方便地集成到应用程序中。本文将深入探讨如何在Android应用中使用这些控件。 一、DatePicker控件 1. **基本概念**: DatePicker是Android系统提供的...

    android时间日期选择控件

    在Android开发中,时间日期选择控件是用户界面中常见的一种元素,用于让用户方便地选取特定的日期或时间。在Android SDK中,提供了多种方式来实现这一功能,其中包括使用系统自带的`DatePicker`和`TimePicker`控件,...

    Android 非常漂亮的滚动选择日期控件

    总的来说,"Android 非常漂亮的滚动选择日期控件"提供了一种优化日期选择体验的方式,它可能是通过创新的界面设计和优秀的交互功能,来提升应用的专业性和用户体验。对于Android开发者来说,理解和掌握这样的控件能...

Global site tag (gtag.js) - Google Analytics