TimePickerDialog onclick () на BUTTON_POSITIVE перестал работать после Oreo - PullRequest
0 голосов
/ 15 октября 2018

У меня странная проблема, когда в приемнике onClick () на TimePickerDialog перестала работать на Android 8.0.

Вот мой код:

          _timePickerDialog.setButton(DialogInterface.BUTTON_POSITIVE,"SET", new DialogInterface.OnClickListener() {


    //System.out.println("ZZZZZ HIT!!!! onClick for _showTimeDialog "); 
      public void onClick(DialogInterface arg0, int arg1) {
        _done = true;
        /*
         * HACK: TimePickerDialog does not have a public method to return
         * the TimePicker hence we get a handle to the TimePicker from the
         * sdk. This would not work if the id of that component changes.
         */
        System.out.println("ZZZZZ HIT!!!! onClick for _showTimeDialog ");

        int searchPlateId = _timePickerDialog.getContext().getResources().getIdentifier("android:id/timePicker", null, null);
        TimePicker searchPlate = (TimePicker) _timePickerDialog.findViewById(searchPlateId);
        //String android_os = getAndroidVersion(android.os.Build.VERSION.SDK_INT);

       // if(android.os.Build.VERSION.SDK_INT > 23)
        _timePickerDialogCallback.onTimeSet(searchPlate, searchPlate.getHour(), searchPlate.getMinute());
       // else
        //  _timePickerDialogCallback.onTimeSet(searchPlate, searchPlate.getCurrentHour(), searchPlate.getCurrentMinute());
          //_timePickerDialogCallback.onTimeSet(searchPlate, searchPlate.getHour(), searchPlate.getMinute());


        //_timePickerDialogCallback.onTimeSet(searchPlate, searchPlate.getCurrentHour(), searchPlate.getCurrentMinute());
        System.out.println("ZZZZZ END HIT!!!! onClick for _showTimeDialog ");
      }

    });        

Тот же код работает, когдая подключаю его с помощью кнопок DialogInterface.BUTTON_NEUTRAL или DialogInterface.BUTTON_NEGATIVE.

Это также работает на более старых версиях Android.

Проблема, которую я наблюдаю, заключается в том, что нажатие кнопки ОК не вызываетМетод onClick ().

Пожалуйста, сообщите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...