Android setPressed поведение
Следующий код является попыткой симуляции нажатия клавиши:
button1.setPressed(true);
try {
Thread.sleep(500);
} catch(InterruptedException e) {
}
button1.setPressed(false);
Выше ничего не делает для кнопки, но
button1.setPressed(true);
сама устанавливает кнопку в нажатом состоянии.
Почему первый фрагмент не влияет на кнопку?
1 ответ
Решение
Поздний ответ, но я предполагаю, что вы блокируете UI-поток, поэтому он не будет обновлять UI, пока вы снова не отключите нажатое состояние.
Вместо этого вы можете попробовать что-то вроде;
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);
}
}
Удачи!