DatePicker在同一个Dialog中有多个EditText

时间:2015-08-11 08:34:46

标签: java android android-layout

这是我想要做的例子,但我不能。 我需要在我自己的对话框中使用一个日期选择器的多个编辑文本意味着无需为datePicker打开另一个日期选择器。 通过单击positiveButton我需要编辑文本小部件中的文本和日期选择器中的选定日期,以字符串或其他形式。 我已经搜索了很多,但我的要求没有解决方案我希望有人可以解决这个问题在此先感谢。

Example DatePicker with EditText

这是我的代码,编辑文本和日期选择器已初始化...

   AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
            builder.setTitle("Add Task");
            LayoutInflater inflater = (LayoutInflater) MainActivity.this.getSystemService(LAYOUT_INFLATER_SERVICE);
            View view = inflater.inflate(R.layout.dialoglayout, null);
            final EditText titleText = (EditText) view.findViewById(R.id.dialogTitleText);
            final EditText descriptionText = (EditText) view.findViewById(R.id.dialogDescriptionText);
                final DatePicker datePicker = (DatePicker) view.findViewById(R.id.datePicker);
builder.setView(view);
            builder.setPositiveButton("Add", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                   ///text + date Required
                    }
                }
            });
            builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
}
            });
            builder.show();

1 个答案:

答案 0 :(得分:0)

在datepicker初始化之后和builder.setView(view)之前添加此代码;得到了选定的日期....

   datePicker.setCalendarViewShown(false);
            final String date ;

            datePicker.init(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(), new DatePicker.OnDateChangedListener() {
                @Override
                public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
                    date = dayOfMonth + "-" + (monthOfYear + 1) + "-" + year;
                }
            });