用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - android代码库

DatePicker TimePicker动态输入日期和时间

2012-09-05 作者: 神马举报

[android]代码库

import java.util.Calendar;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.DatePicker;
import android.widget.TimePicker;

public class DateAndTime extends Activity {
	private int mYear;
	private int mMonth;
	private int mDay;
	private int mHour;
	private int mMinute;
	TextView tv;
	TimePicker tp;
	DatePicker dp;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) { // 取得目前日期与时间
		Calendar c = Calendar.getInstance();
		mYear = c.get(Calendar.YEAR);
		mMonth = c.get(Calendar.MONTH);
		mDay = c.get(Calendar.DAY_OF_MONTH);
		mHour = c.get(Calendar.HOUR_OF_DAY);
		mMinute = c.get(Calendar.MINUTE);
		super.onCreate(savedInstanceState); // 载入main.xml Layout
		setContentView(R.layout.main); // 取得TextView对象,并调用updateDisplay()来设定显示的初始日期时间
		tv = (TextView) findViewById(R.id.showTime);
		updateDisplay(); // 取得DatePicker对象,以init()设定初始值与onDateChangeListener()
		dp = (DatePicker) findViewById(R.id.dPicker);
		dp.init(mYear, mMonth, mDay, new DatePicker.OnDateChangedListener() {
			@Override
			public void onDateChanged(DatePicker view, int year,
					int monthOfYear, int dayOfMonth) {
				mYear = year;
				mMonth = monthOfYear;
				mDay = dayOfMonth; // 调用updateDisplay()来改变显示日期
				updateDisplay();
			}
		}); // 取得TimePicker对象,并设定为24小时制显示
		tp = (TimePicker) findViewById(R.id.tPicker);
		tp.setIs24HourView(true); // setOnTimeChangedListener,并重写onTimeChanged
									// event
		tp.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
			@Override
			public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
				mHour = hourOfDay;
				mMinute = minute; // 调用updateDisplay()来改变显示时间
				updateDisplay();
			}
		});
	}

	/* 设定显示日期时间的方法 */
	private void updateDisplay() {
		tv.setText(new StringBuilder().append(mYear).append("/")
				.append(format(mMonth + 1)).append("/").append(format(mDay))
				.append(" ").append(format(mHour)).append(":")
				.append(format(mMinute)));
	}

	/* 日期时间显示两位数的方法 */
	private String format(int x) {
		String s = "" + x;
		if (s.length() == 1)
			s = "0" + s;
		return s;
	}
}







main.xml
----------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
  android:id="@+id/layout1"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android"
>
  <TextView
    android:id="@+id/mText"
    android:layout_width="270px"
    android:layout_height="40px"
    android:text="@string/str_title"
    android:textSize="18sp"
    android:layout_x="20px"
    android:layout_y="32px"
  />
  <ImageView
    android:id="@+id/mImage01"
    android:layout_width="71px"
    android:layout_height="96px"
    android:layout_x="20px"
    android:layout_y="122px"
    android:src="@drawable/p04"
  />
  <ImageView
    android:id="@+id/mImage02"
    android:layout_width="71px"
    android:layout_height="96px"
    android:layout_x="126px"
    android:layout_y="122px"
    android:src="@drawable/p04"
  />
  <ImageView
    android:id="@+id/mImage03"
    android:layout_width="71px"
    android:layout_height="96px"
    android:layout_x="232px"
    android:layout_y="122px"
    android:src="@drawable/p04"
  />
  <Button
    android:id="@+id/mButton"
    android:layout_width="118px"
    android:layout_height="wrap_content"
    android:text="@string/str_button"
    android:layout_x="100px"
    android:layout_y="302px"
  />
</AbsoluteLayout>


网友评论    (发表评论)

共1 条评论 1/1页

发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...