【发布时间】:2012-07-12 10:37:35
【问题描述】:
我有这个 onKeyDown 方法的代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP)
{
int index = seekbar.getProgress();
seekbar.setProgress(index + 1);
return true;
} else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)
{
int index = seekbar.getProgress();
seekbar.setProgress(index - 1);
return true;
}
return super.onKeyDown(keyCode, event);
}
问题是我想在AsyncTask 和postExecute 上执行此操作,并且我认为在runOnUiThread 中,但我不确定。
对此有何想法或建议?
谢谢!
编辑:
我在对话框中有一个 seekBar,它是在 AsynTask 的 postExecute 中创建并显示的,我需要像这样更新 seekbar 拇指位置:seekbar thumb position change when user press device volume keys
【问题讨论】:
-
为什么要这样做?
-
onKeyDown() 是 Activity 的方法而不是 AsyncTask 的方法,你不能直接调用这个方法。
-
因为我在对话框中有一个 seekBar,它是在 AsynTask 的 postExecute 中创建并显示的,我需要像这样更新搜索栏拇指位置:stackoverflow.com/questions/3215791/…
-
全局做一个Seekbar引用,然后就可以正常做,不需要把这个方法放在PostExecute()上。