这个问题描述起来很简单,但是我没有找到答案。
我正在使用 ActionBarSherlock(如果相关),并且我有一个菜单选项来刷新片段的内容。一切正常。
我遇到的问题是,当我按下刷新按钮时,它会冻结 UI 直到进程完成,我想显示对话框和其他内容。
这是一段代码:
“公共类 MainActivity 扩展 SherlockFragmentActivity”方法:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_refresh:
Thread.sleep(10000); // removed try/catch code for practical purposes.
break;
}
return true;
}
在这种情况下,UI 冻结 10 秒(刷新按钮保持“选中”状态)。
我认为这与我的应用程序代码无关,而是与 ABS 或 android 事物有关。
只是一个事实:我在这个方法中使用线程和异步任务,所以这不是问题。
关于如何使 UI 可更新(或像线程一样运行此方法)的任何想法?