2016-04-22 13 views
0

У меня есть clickable ImageView с цветом фона, и я хочу, чтобы его цвет фона был изменен, когда он коснулся/щелкнул, и он должен остаться измененным даже после того, как щелчок будет отпущен, пока не будет щелкнуто что-то еще. Для этого я пишу state-list drawable.Какое состояние представляет собой просмотр после нажатия (т.е. после отпускания клика)?

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

Я говорю о следующих состояниях given here:

  • state_pressed
  • state_focused
  • state_hovered
  • state_selected
  • state_checkable
  • state_checked
  • State_Enabled
  • state_activated
  • state_window_focused

ответ

0

Это пример !!!

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), drawable); 
    StateListDrawable states = new StateListDrawable(); 
    states.addState(new int[]{android.R.attr.state_pressed}, 
      ResourcesCompat.getDrawable(getResources(), R.drawable.image_pressed, null)); 
    states.addState(new int[]{android.R.attr.state_focused}, 
      ResourcesCompat.getDrawable(getResources(), R.drawable.focused, null)); 
    states.addState(new int[]{}, 
      new BitmapDrawable(getResources(), bitmap)); 
    imageView.setImageDrawable(states); 
+0

SO Вы имеете в виду, что 'ImageView' находится в ** сфокусированном ** состоянии _after_, нажимается? – Solace