Android setPressed поведение - PullRequest
       24

Android setPressed поведение

0 голосов
/ 06 января 2012

Следующий код является попыткой симуляции нажатия клавиши:

button1.setPressed(true);
try {
Thread.sleep(500);
} catch(InterruptedException e) {
} 
button1.setPressed(false);

Вышеуказанное никак не влияет на кнопку, но

button1.setPressed(true);

само устанавливает кнопку в нажатом состоянии.
Почему первый фрагмент не влияет на кнопку?

1 Ответ

0 голосов
/ 20 марта 2012

Поздний ответ, но я предполагаю, что вы блокируете поток пользовательского интерфейса, поэтому он не будет обновлять пользовательский интерфейс, пока вы снова не отключите нажатое состояние.;

class MyClass extends Activity ... {
  private final Handler _handler = new Handler();
  ...
  void somefunc() {
    button1.setPressed(true);
    _handler.postDelayed(new Runnable() {
      @Override
      public void run() {
        button1.setPressed(false);
      }
    }, 500);
  }
}

Удачи!

...