Android---29---DatePicker、TimePick

DatePicker与TimePicker是用来显示时间的控件。

onDateChanged、   onTimeChanged分别是控件的触发事件。

MainActivity.java:

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.TimerTask;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.DatePicker;
import android.widget.TextView;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.TimePicker;
import android.widget.TimePicker.OnTimeChangedListener;
import android.widget.Toast;

/**
 * 时间控件的使用
 *
 * @author Caesar
 *
 */
public class MainActivity extends Activity implements OnDateChangedListener,
		OnTimeChangedListener {
	private TextView textView;
	private DatePicker datePicker;
	private TimePicker timePicker;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		datePicker = (DatePicker) findViewById(R.id.datepicker);
		textView = (TextView) findViewById(R.id.textview);
		timePicker = (TimePicker) findViewById(R.id.timepicker);
		datePicker.init(2015, 4, 24, this);// 初始化日期
		timePicker.setIs24HourView(true);// 显示时间是否按照24小时制
		timePicker.setOnTimeChangedListener(this);// 注册事件

	}

	// 时间控件的触发
	@Override
	public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
		// TODO Auto-generated method stub
		Toast.makeText(MainActivity.this,
				"hourOfDay" + hourOfDay + "minute" + minute, 1).show();
	}

	// 日期控件的触发
	@Override
	public void onDateChanged(DatePicker view, int year, int monthOfYear,
			int dayOfMonth) {
		// TODO Auto-generated method stub
		Calendar calendar = Calendar.getInstance();
		calendar.set(datePicker.getYear(), datePicker.getMonth(),
				datePicker.getDayOfMonth(), timePicker.getCurrentHour(),
				timePicker.getCurrentMinute());
		SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日    HH:mm");
		textView.setText(format.format(calendar.getTime()));
	}
}

activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.datepickerdemo.MainActivity" >

    <DatePicker
        android:id="@+id/datepicker"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <TimePicker
        android:id="@+id/timepicker"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/textview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textSize="18dp"
        />

</LinearLayout>
时间: 2024-11-07 06:34:40

Android---29---DatePicker、TimePick的相关文章

Android 自学之日期DatePicker、时间TimePicker选择器

日期(DatePicker).时间(TimePicker)是两个比较易用的控件,他们都是从帧布局FrameLayout派生而出的:他们在FrameLayout的基础上提供了一些方法来获取当前用户所选择的日期和时间:如果程序需要获取日期和时间,则可以通过为DatePicker添加OnDateChangedListener进行监听,为TimePicker添加OnTimeChangeListenter进行监听来实现. 以一个让用户选择日期和时间的例子来展示下他们的功能和用法. layout/main.

android学习笔记七——控件(DatePicker、TimePicker、ProgressBar)

DatePicker.TimePicker ==> DatePicker,用于选择日期 TimePicker,用于选择时间 两者均派生与FrameLayout,两者在FrameLayout的基础上提供了一些方法来获取用户所选日期.时间: 程序中如果需要获取用户选择的日期.时间,可通过添加DataPicker添加OnDataChangeListener进行监听,为TimePicker添加OnTimeChangeListener进行监听. 实例——略 进度条==> ProgressBar.标题进度

Android中关闭DatePicker、TimePicker、NumberPicker的可编辑模式

DatePicker.TimePicker.NumberPicker这三个控件在使用的过程中,用户点击数字会弹出键盘,有时候会造成布局被挤压不好看,也有其他的需求. 我看了网上很多文章的解决办法都无效,后来还是万能的StackOverflow网站帮我解决了这个问题,代码如下: [java] view plain copy mDatePicker.setDescendantFocusability(DatePicker.FOCUS_BLOCK_DESCENDANTS); mTimePicker.s

Android录音--AudioRecord、MediaRecorder

Android提供了两个API用于实现录音功能:android.media.AudioRecord.android.media.MediaRecorder. 网上有很多谈论这两个类的资料.现在大致总结下: 1.AudioRecord 主要是实现边录边播(AudioRecord+AudioTrack)以及对音频的实时处理(如会说话的汤姆猫.语音) 优点:语音的实时处理,可以用代码实现各种音频的封装 缺点:输出是PCM语音数据,如果保存成音频文件,是不能够被播放器播放的,所以必须先写代码实现数据编码

Android设备网络、屏幕尺寸、SD卡、本地IP、存储空间等信息获取工具类

Android设备网络.屏幕尺寸.SD卡.本地IP.存储空间.服务.进程.应用包名等信息获取的整合工具类. 1 package com.qiyu.ddb.util; 2 3 import android.annotation.SuppressLint; 4 import android.annotation.TargetApi; 5 import android.app.Activity; 6 import android.app.ActivityManager; 7 import androi

Android应用Activity、Dialog、PopWindow窗口显示机制及源码分析

[工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处,尊重劳动成果] 1 背景 之所以写这一篇博客的原因是因为之前有写过一篇<Android应用setContentView与LayoutInflater加载解析机制源码分析>,然后有人在文章下面评论和微博私信中问我关于Android应用Dialog.PopWindow.Toast加载显示机制是咋回事,所以我就写一篇文章来分析分析吧(本文以Android5.1.1 (API 22)源码为基础分析),以便大家在应

Android应用Activity、Dialog、PopWindow、Toast窗体加入机制及源代码分析

[工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处.尊重劳动成果] 1 背景 之所以写这一篇博客的原因是由于之前有写过一篇<Android应用setContentView与LayoutInflater载入解析机制源代码分析>.然后有人在文章以下评论和微博私信中问我关于Android应用Activity.Dialog.PopWindow载入显示机制是咋回事,所以我就写一篇文章来分析分析吧(本文以Android5.1.1 (API 22)源代码为基础分析),以

【转载】Android Studio jar、so、library项目依赖,原文链接http://zhengxiaopeng.com/2014/12/13/Android-Studio-jar、so、library项目依赖/

前言 Android Studio(以下简称AS)在13年I/O大会后放出预览版到现在放出的正式版1.0(PS.今天又更新到1.0.1了)历时一年多了,虽然Google官方推出的Android开发者的IDE对我们Android DEV是很有吸引力的,但考虑到beta版还是太多问题所以自己主要还是把AS当做尝鲜为主,每放出一个较大更新就下载下来试试,感觉还是挺好的,渐渐用AS的人越来越多,Github上的项目也基本是AS的了,Google的sample也采用AS,所以使用Eclipse跟外界交流越

【原创】NIO框架入门(四):Android与MINA2、Netty4的跨平台UDP双向通信实战

概述 本文演示的是一个Android客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo. 当前由于NIO框架的流行,使得开发大并发.高性能的互联网服务端成为可能.这其中最流行的无非就是MINA和Netty了,MINA目前的主要版本是MINA2.而Netty的主要版本是Netty3和Netty4(Netty5已经被取消开发了:详见此文). 本文中,服务端将分别用MINA2和Netty4进行实现,但在你实际的项目中服务端实现只需选其一就行了.本文中的Demo同时