您的位置:首页 > 移动开发 > Android开发

Android开发——DatePicker和TimePicker时间选择器

2016-12-14 01:04 423 查看
我们前面的几个控件是不是觉得简单?不要这样认为哦,自信心是好事,自信心膨胀那就会影响你的生活和情绪了,我们学的简单只是因为我们在入门而已,这就相当于我们刚刚出生还在学习走路、吃饭,等我们越学到后来就会觉得越难,也越有意思呢,我们接下来来一个稍微复杂一点的控件,时间选择器。看看你们能不能直接看得懂代码。

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
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.datepicker.MainActivity" >

<DatePicker
android:id="@+id/dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TimePicker
android:id="@+id/tp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/dp"/>
</RelativeLayout>


哇,骗子,还是这么简单,好吧,我们往下看。
MainActivity.java

package com.example.datepicker;

import java.util.Calendar;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.TimePicker;
import android.widget.TimePicker.OnTimeChangedListener;

public class MainActivity extends Activity {

private DatePicker datePicker;
private TimePicker timePicker;
private Calendar calender;
private int year;
private int month;
private int day;
private int hour;
private int minute;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

calender=Calendar.getInstance();
year=calender.get(Calendar.YEAR);
month=calender.get(Calendar.MONTH);
day=calender.get(Calendar.DAY_OF_MONTH);
hour=calender.get(Calendar.HOUR_OF_DAY);
minute=calender.get(Calendar.MINUTE);

setTitle(year+"-"+month+"-"+day+"-"+hour+"-"+minute);

datePicker=(DatePicker)findViewById(R.id.dp);
timePicker=(TimePicker)findViewById(R.id.tp);

datePicker.init(year, month, day,new OnDateChangedListener(){

@Override
public void onDateChanged(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
// TODO Auto-generated method stub
setTitle(year + "-" + (monthOfYear + 1) + "-" + dayOfMonth);
}

});

timePicker.setOnTimeChangedListener(new OnTimeChangedListener(){

@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
setTitle(hourOfDay + ":" + minute);
}

});
new DatePickerDialog(this, new OnDateSetListener() {

@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
setTitle(year + "-" + (monthOfYear + 1) + "-" + dayOfMonth);
}
}, year, calender.get(Calendar.MONTH), day).show();

new TimePickerDialog(this, new OnTimeSetListener() {

@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
setTitle(hourOfDay + ":" + minute);
}
}, hour, minute, true).show();
}

}


我把注释全部删了

简单吗?难度是不是就大了一点呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: