【问题标题】:Android setPressed behaviorAndroid setPressed 行为
【发布时间】:2012-01-06 06:05:56
【问题描述】:

下面的代码是一个模拟按键的尝试:

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

上面对按钮没有任何作用,但是

button1.setPressed(true);

单独将按钮设置为按下状态。
为什么第一个sn -p对按钮没有影响?

【问题讨论】:

  • 如果您还尝试执行 Button 的 OnClickListener,请记住调用 button1.performClick()。 (但也许您只是在这里删除了该部分以使代码更清晰/更清晰):)

标签: android button simulate pressed


【解决方案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);
  }
}

祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-05
    • 1970-01-01
    • 1970-01-01
    • 2017-04-14
    • 1970-01-01
    • 2021-09-07
    • 1970-01-01
    相关资源
    最近更新 更多