2015-09-20 2 views
0

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

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); 
    } 

ответ

0

он не выбирает цвет на 1-ом выборе , но некоторые, как он выбран, когда я вновь открыть цвет диалоговое

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

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

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

Custom event listener on Android app

Смежные вопросы