activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MainActivity" > <EditText
android:id="@+id/input"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="datetime" /> <LinearLayout
android:id="@+id/LinearLayout2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<DatePicker
android:id="@+id/mydp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" /> <TimePicker
android:id="@+id/mytp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout> </LinearLayout>

MainActivity.java

public class MainActivity extends Activity {
private EditText myInput=null;
private TimePicker mytp=null;
private DatePicker mydp=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.myInput=(EditText)super.findViewById(R.id.input);
this.mytp=(TimePicker)super.findViewById(R.id.mytp);
this.mydp=(DatePicker)super.findViewById(R.id.mydp);
this.mytp.setIs24HourView(true);//设置为24小时制
this.mytp.setOnTimeChangedListener(new OnTimeChangedListenerImpl());//添加时间变更响应事件
this.mydp.init(this.mydp.getYear(),
this.mydp.getMonth(),
this.mydp.getDayOfMonth(),
new OnDateChangeLinstenerImpl());//添加日期变更响应事件
this.setDateTime(); //设置初始的日期事件
}
private class OnTimeChangedListenerImpl implements OnTimeChangedListener{ @Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
// 当时间改变时触发的事件
setDateTime();
} } private class OnDateChangeLinstenerImpl implements OnDateChangedListener{ @Override
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// 当日期改变时触发的事件
setDateTime();
} } public void setDateTime(){
this.myInput.setText(this.mydp.getYear()+"-"+(this.mydp.getMonth()+1)+"-"+this.mydp.getDayOfMonth()+" "+this.mytp.getCurrentHour()+":"+this.mytp.getCurrentMinute());
}
05-11 17:35