该方法实现的调用系统Api,和android的版本,手机的牌子有关,实现不同的界面。不一定是入下图所示:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/text01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="查询日期:"
android:textSize="18sp"
/>
<TextView
android:id="@+id/tvDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/text01"
android:layout_alignLeft="@id/text01"
/>
<Button
android:id="@+id/btnDatePicker"
android:text="编辑"
android:layout_toRightOf="@id/tvDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="show"
android:layout_alignTop="@id/tvDate"
/>
</RelativeLayout>
package com.turboradio;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.DatePicker;
import android.widget.TextView;
public class DatePickerActivity extends Activity {
private TextView tvDate;
private Calendar cal = Calendar.getInstance();
private DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, monthOfYear);
cal.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateDate();
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.date_picker_dialog);
tvDate = (TextView)findViewById(R.id.tvDate);
}
public void show(View v){
new DatePickerDialog(DatePickerActivity.this,listener,
cal.get(Calendar.YEAR),
cal.get(Calendar.MONTH),
cal.get(Calendar.DAY_OF_MONTH)
).show();
}
private void updateDate(){
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
tvDate.setText(simpleDateFormat.format(cal.getTime()));
}
}