如何显示日期选择器对话框扩展自android中的线性布局视图
我正在使自定义视图从线性布局扩展。但在这里,我想在单击getdate按钮时显示日期选择器。如何做到这一点如何显示日期选择器对话框扩展自android中的线性布局视图,android,date,Android,Date,我正在使自定义视图从线性布局扩展。但在这里,我想在单击getdate按钮时显示日期选择器。如何做到这一点 public class XmlTest extends LinearLayout implements OnItemSelectedListener, OnDateSetListener{ Date = Calendar.getInstance(); btndate.setOnClickListener(new Butt
public class XmlTest extends LinearLayout implements OnItemSelectedListener, OnDateSetListener{
Date = Calendar.getInstance();
btndate.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
datePickerInput=v.getId();
for (int d = 0; d < mlistDateTimeButton.size(); d++){
if (listDateTimeButton.get(d).getId() == v.getId()){
showDateDialog(etLocationTest, Date);
}
}
}
});
}
protected void showDateDialog(EditText etLocationTest2, Calendar date2) {
Log.i("", "Date showDateDialog ");
activeDateDisplay = etLocationTest2;
activeDate = date2;
((Activity) getContext()).showDialog(DATE_DIALOG_ID);
}
但无法显示“日期选择器”对话框。如何执行此操作。在onCreateView内部。
btndate.setonClickListener新建视图.OnClickListener{
public void onClick(View v) {
DatePickerDialog dialog = new DatePickerDialog(getActivity(),datePickerListener,
year, mon,day);
dialog.show();
}
});
public void onDateSet(DatePicker view, int selectedYear,
int selectedMonth, int selectedDay) {
//Do whatever you want with selectedDay,selectedMonth and selectedYear
}
};
专用DatePickerDialog.OnDateSetListener datePickerListener
=新建DatePickerDialog.OnDateSetListener{
public void onClick(View v) {
DatePickerDialog dialog = new DatePickerDialog(getActivity(),datePickerListener,
year, mon,day);
dialog.show();
}
});
public void onDateSet(DatePicker view, int selectedYear,
int selectedMonth, int selectedDay) {
//Do whatever you want with selectedDay,selectedMonth and selectedYear
}
};
这对我很有用,希望对你也有帮助 我已经在下面添加了实现这一点的所有代码 将其保存在类中扩展linearlayout 创建一个构造函数,从初始化该类的位置获取上下文。使用了代码,对我来说效果很好
class XmlTest extends linearlayout{
DatePopListener mDatePopListener;
EditText edittext;
TextBox label;
private DatePickerDialog datePickerDialog;
private SimpleDateFormat dateFormatter;
public XmlTest(Context context,String labelText){
dateFormatter = new SimpleDateFormat("dd-MM-yyyy", Locale.US);
Calendar newCalendar = Calendar.getInstance();
label.setText(labelText);
this.addView(label);
this.addView(txtBox);
txtBox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
datePickerDialog.show();
}
});
datePickerDialog = new DatePickerDialog(getContext(), new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Calendar newDate = Calendar.getInstance();
newDate.set(year, monthOfYear, dayOfMonth);
txtBox.setText(dateFormatter.format(newDate.getTime()));
}
},newCalendar.get(Calendar.YEAR), newCalendar.get(Calendar.MONTH), newCalendar.get(Calendar.DAY_OF_MONTH));
}
//Now you can do your task here whatever as the date will be available in txtBox
//Enter your code as your requirements
}
您面临的问题是什么?是否有任何错误?无法显示日期选择器对话框,先生。