android.app.DatePickerDialog#setCanceledOnTouchOutside ( )源码实例Demo

下面列出了android.app.DatePickerDialog#setCanceledOnTouchOutside ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: GLEXP-Team-onebillion   文件: OBSystemsManager.java
public Dialog createDateSetDialog(String message, Boolean cancelable, OBUtils.RunLambda completionBlock)
{
    dateSetCompletionBlock = completionBlock;
    final Calendar calendar = Calendar.getInstance();
    DatePickerDialog d = new DatePickerDialog(MainActivity.mainActivity, this, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));
    //
    d.setCancelable(cancelable);
    d.setCanceledOnTouchOutside(cancelable);
    //
    if (message == null)
    {
        LinearLayout linearLayout = new LinearLayout(MainActivity.mainActivity.getApplicationContext());
        d.requestWindowFeature(Window.FEATURE_NO_TITLE);
        d.setCustomTitle(linearLayout);
    } else
    {
        d.setMessage(message + "\n");
    }
    //
    d.setButton(DatePickerDialog.BUTTON_NEGATIVE, null, (DialogInterface.OnClickListener) null);
    //
    DatePicker datePicker = d.getDatePicker();
    calendar.clear();
    calendar.set(2016, Calendar.JANUARY, 1);
    datePicker.setMinDate(calendar.getTimeInMillis());
    calendar.clear();
    calendar.set(2020, Calendar.DECEMBER, 31);
    datePicker.setMaxDate(calendar.getTimeInMillis());
    return d;
}
 
源代码2 项目: GLEXP-Team-onebillion   文件: OCM_ChildMenu.java
void showPickDateDialog (final DatePickerDialog.OnDateSetListener listener, Date startDate)
{
    Calendar currentCalendar = Calendar.getInstance();
    if (startDate != null)
    {
        currentCalendar.setTime(startDate);
    }
    final Calendar calendar = currentCalendar;
    DatePickerDialog d = new DatePickerDialog(MainActivity.mainActivity, listener, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));
    //
    d.setCancelable(false);
    d.setCanceledOnTouchOutside(false);
    //
    LinearLayout linearLayout = new LinearLayout(MainActivity.mainActivity.getApplicationContext());
    d.requestWindowFeature(Window.FEATURE_NO_TITLE);
    d.getWindow().clearFlags(Window.FEATURE_ACTION_BAR);
    d.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
    d.setCustomTitle(linearLayout);
    //
    d.setButton(DatePickerDialog.BUTTON_NEGATIVE, "Cancel", new DialogInterface.OnClickListener()
    {
        @Override
        public void onClick (DialogInterface dialog, int which)
        {
            // do nothing
        }
    });
    //
    DatePicker datePicker = d.getDatePicker();
    calendar.clear();
    calendar.set(2017, Calendar.JANUARY, 1);
    datePicker.setMinDate(calendar.getTimeInMillis());
    calendar.clear();
    calendar.set(2025, Calendar.DECEMBER, 31);
    datePicker.setMaxDate(calendar.getTimeInMillis());
    //
    d.show();
}
 
源代码3 项目: GLEXP-Team-onebillion   文件: OBSetupMenu.java
void showPickDateDialog (final DatePickerDialog.OnDateSetListener listener, Date startDate)
{
    Calendar currentCalendar = Calendar.getInstance();
    if (startDate != null)
    {
        currentCalendar.setTime(startDate);
    }
    final Calendar calendar = currentCalendar;
    DatePickerDialog d = new DatePickerDialog(MainActivity.mainActivity, listener, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));
    //
    d.setCancelable(false);
    d.setCanceledOnTouchOutside(false);
    //
    LinearLayout linearLayout = new LinearLayout(MainActivity.mainActivity.getApplicationContext());
    d.requestWindowFeature(Window.FEATURE_NO_TITLE);
    d.getWindow().clearFlags(Window.FEATURE_ACTION_BAR);
    d.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
    d.setCustomTitle(linearLayout);
    //
    d.setButton(DatePickerDialog.BUTTON_NEGATIVE, "Cancel", new DialogInterface.OnClickListener()
    {
        @Override
        public void onClick (DialogInterface dialog, int which)
        {
            MainActivity.log("OBSetupMenu:showPickDateDialog:cancelled!");
            loadHomeScreen();
        }
    });
    //
    DatePicker datePicker = d.getDatePicker();
    calendar.clear();
    calendar.set(2017, Calendar.JANUARY, 1);
    datePicker.setMinDate(calendar.getTimeInMillis());
    calendar.clear();
    calendar.set(2025, Calendar.DECEMBER, 31);
    datePicker.setMaxDate(calendar.getTimeInMillis());
    //
    d.show();
}
 
@Nullable
@Override
public final Dialog onCreateDialog(final Bundle savedInstanceState) {
	int year = getArguments().getInt("Year");
	int month = getArguments().getInt("Month");
	int date = getArguments().getInt("Date");
	int position = getArguments().getInt("position");

	final Activity activity = getActivity();
	final ListPicturesForNameFragment fragment = ((ListPicturesForNameFragmentHolder) activity)
			.getListPicturesForNameFragment();

	final EyePhotoPair pairToUpdate = fragment.getEyePhotoPairs()[position];

	final DatePickerDialog dialog = new DatePickerDialog(getActivity(), null, year, month, date);

	// Workaround due to Android bug
	dialog.setCancelable(true);
	dialog.setCanceledOnTouchOutside(true);
	dialog.setButton(DialogInterface.BUTTON_NEGATIVE, getString(R.string.button_cancel), (OnClickListener) null);
	dialog.setButton(DialogInterface.BUTTON_POSITIVE, getString(R.string.button_ok), //
			new OnClickListener() {
				@Override
				public void onClick(final DialogInterface dialogInterface, final int which) {
					int yearSelected = dialog.getDatePicker().getYear();
					int monthOfYear = dialog.getDatePicker().getMonth();
					int dayOfMonth = dialog.getDatePicker().getDayOfMonth();

					fragment.mPictureDate = new GregorianCalendar(yearSelected, monthOfYear, dayOfMonth);
					Date newDate = new Date(fragment.mPictureDate.getTimeInMillis());

					if (!pairToUpdate.isDateChangeable(newDate)) {
						DialogUtil.displayError(activity, R.string.message_dialog_cannot_change_date, false,
								pairToUpdate.getPersonName(),
								pairToUpdate.getDateDisplayString(DATE_FORMAT),
								DateUtil.format(newDate, DATE_FORMAT));
						return;
					}

					boolean success = pairToUpdate.changeDate(newDate);
					fragment.updateEyePhotoPairs();

					if (!success) {
						DialogUtil.displayError(activity, R.string.message_dialog_failed_to_change_date, false,
								pairToUpdate.getPersonName(),
								pairToUpdate.getDateDisplayString(DATE_FORMAT),
								DateUtil.format(newDate, DATE_FORMAT));
					}
				}
			});

	return dialog;
}
 
源代码5 项目: TiDialogs   文件: DatePickerProxy.java
private DatePickerDialog getDialog() {
	DatePickerDialog picker = new DatePickerDialog(this.proxy.getActivity(),
				new DatePickerDialog.OnDateSetListener() {
					// when dialog box is closed, below method will be
					// called.
					public void onDateSet(DatePicker view,
							int selectedYear, int selectedMonth,
							int selectedDay) {
						year = selectedYear;
						month = selectedMonth;
						day = selectedDay;

						KrollDict data = new KrollDict();

							Calendar calendar = Calendar.getInstance();
							calendar.set(Calendar.YEAR, year);
							calendar.set(Calendar.MONTH, month);
							calendar.set(Calendar.DAY_OF_MONTH, day);
							Date value = calendar.getTime();

							data.put("value", value);
							data.put("year", year);
							data.put("month", month);
							data.put("day", day);
                                  fireEvent("click", data);		

					}
				}, year, month, day);
	picker.setCanceledOnTouchOutside(false);

	picker.setButton(DialogInterface.BUTTON_POSITIVE, okButtonTitle, picker);

	picker.setButton(DialogInterface.BUTTON_NEGATIVE, cancelButtonTitle,
		new DialogInterface.OnClickListener() {

			@Override
			public void onClick(DialogInterface dialog, int which) {
				fireEvent("cancel", new KrollDict());
			}
		});

	return picker;
}