基于点击按钮,我必须做一些处理,需要一些时间。所以我决定在主UI线程的一个单独线程中执行此操作。将更新/数据从一个线程发送到Android中的UI线程
现在,基于单独线程中的计算,我在创建此新线程的UI线程主类中调用一个函数。在这个功能中,我更新了UI。我被告知这不会工作,因为我需要调用主UI线程。
有人可以帮助我吗?
@Override
public void onListItemClicked(int index, Map<String, Object> data) {
new Thread(new Runnable() {
@Override
public void run() {
// Issue command() on a separate thread
wasCommandSuccess(command());
}
}).start();
}
private void wasCommandSuccess(boolean result){
if (result == false){
getUI(BasicUI.class).showAlert("Command failed!", "Unable to access");
}
}
你通常会使用AsyncTask来做到这一点。不过,我敢打赌,在网络上进行简单的搜索会告诉你。请参阅http://stackoverflow.com/q/4369537/1856738 – 2013-04-10 09:21:55
我的课程已经扩展了另一个课程 – Sunny 2013-04-10 09:26:26
是的,那又如何?你必须实现你的线程,所以你可以实现一个AsyncTask,不是吗? – 2013-04-10 09:28:02