Текущее значение цвета Android Color Picker не обновляется

я пытаюсь получить текущий выбранный цвет, он не выбирает цвет при первом выборе, но каким-то образом он выбирается, когда я снова открываю диалоговое окно цвета, т.е. при каждом новом выборе (выборе цвета) предыдущий выбор становится текущим выбранным цветом.

void openDialog(boolean supportsAlpha,int color) {
        AmbilWarnaDialog dialog = new AmbilWarnaDialog(this, color, supportsAlpha, new AmbilWarnaDialog.OnAmbilWarnaListener() {
            @Override
            public void onOk(AmbilWarnaDialog dialog, int color) {
                Toast.makeText(getApplicationContext(), "ok", Toast.LENGTH_SHORT).show();
                myActivity.this.color = color;
            }

            @Override
            public void onCancel(AmbilWarnaDialog dialog) {
                Toast.makeText(getApplicationContext(), "cancel", Toast.LENGTH_SHORT).show();
            }
        });
        dialog.show();
    }

В этой части приведенного выше примера myActivity.this.color = color; я пытаюсь установить цвет.

ИСПОЛЬЗОВАНИЕ

 openDialog(false,color);
 drawView.setColor(color);



 public void setColor(int newColor) {
        invalidate();
        drawPaint.setColor(newColor);
    }

person noobie-php    schedule 20.09.2015    source источник


Ответы (1)


он не выбирает цвет при первом выборе, но каким-то образом он выбирается, когда я снова открываю диалоговое окно цвета

Поскольку никакое событие не срабатывает, когда onOk кнопка AmbilWarnaDialog нажимается в myActivity для обновления цвета просмотра, который выбран из Dilaog

Создайте собственный прослушиватель событий с помощью интерфейса, внедрите его в действие, из которого будет отображаться оповещение, и вызовите метод прослушивателя из кнопки onOk`, передав выбранное значение цвета.

См. следующий пример для создания пользовательского прослушивателя событий:

Прослушиватель пользовательских событий в приложении Android

person ρяσѕρєя K    schedule 20.09.2015