我是android新手。 我的布局是:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="26-01-2010" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Calender" />
</LinearLayout>
我有一个编辑框和按钮。当我点击按钮时,我想打开一个日历并能够从日历中选择一个日期,并且所选日期必须设置为编辑框。 请帮助任何好友。 在此先感谢。!!
答案 0 :(得分:3)
调用方法在文本视图上选择日期或按钮或文字点击
private void SelectDate() {
final Calendar c = Calendar.getInstance();
year = c.get(Calendar.YEAR);
month = c.get(Calendar.MONTH);
day = c.get(Calendar.DAY_OF_MONTH);
showDialog(DATE_PICKER_ID);
}
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DATE_PICKER_ID:
// open datepicker dialog.
// set date picker for current date
// add pickerListener listner to date picker
return new DatePickerDialog(this, pickerListener, year, month,day);
}
return null;
}
private DatePickerDialog.OnDateSetListener pickerListener = new DatePickerDialog.OnDateSetListener() {
// when dialog box is closed, below method will be called.
@Override
public void onDateSet(DatePicker view, int selectedYear,
int selectedMonth, int selectedDay) {
year = selectedYear;
month = selectedMonth;
day = selectedDay;
// Show selected date
birthdate_edt.setText(new StringBuilder().append(month + 1)
.append("-").append(day).append("-").append(year)
.append(" "));
}
};
答案 1 :(得分:1)
您可以使用DatePicker选择日期。它适合您的需要吗?
答案 2 :(得分:1)
您可以使用DatePicker选择日期。
检查此链接
exmple link
http://www.mkyong.com/android/android-date-picker-example/
Android链接
http://developer.android.com/reference/android/widget/DatePicker.html
答案 3 :(得分:1)
尝试这样的事情:
button.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Dialog dlg = new DatePickerDialog(YourActivity.this, new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int month, int day) {
yourEditText.setText(String.format("%02d.%02d.%04d", day, month+1, year);
}
}
}
});
您也可以设置您的edittext不可聚焦以防止手动输入值