Java 如何在Android中将Swingworker更改为AsyncTask?

Java 如何在Android中将Swingworker更改为AsyncTask?,java,android,android-asynctask,Java,Android,Android Asynctask,如何在Android中将Swingworker更改为AsyncTask 我的代码如下 private void showWeather() { // TODO Auto-generated method stub SwingWorker worker = new SwingWorker<WeatherInfo,Object>() { public WeatherInfo doInBackground()

如何在Android中将Swingworker更改为AsyncTask

我的代码如下

private void showWeather() {
        // TODO Auto-generated method stub
         SwingWorker worker = new SwingWorker<WeatherInfo,Object>()
         {
             public WeatherInfo doInBackground()
             {
                 YahooWeather yahooWeather = new YahooWeather();
                 return yahooWeather.getWeatherInfo();
             }
             public void done()
             {
                 try {
                      WeatherInfo wInfo = get();   // get WeatherInfo result from background thread
                      updateGUI(wInfo);
                    }
                    catch(Exception e){} 
             }
         };
         worker.execute();
    }
private void showWeather(){
//TODO自动生成的方法存根
SwingWorker worker=新SwingWorker()
{
公共天气信息doInBackground()
{
YahooWeather YahooWeather=新的YahooWeather();
返回yahooWeather.getWeatherInfo();
}
公众假期结束()
{
试一试{
WeatherInfo wInfo=get();//从后台线程获取WeatherInfo结果
更新用户界面(wInfo);
}
捕获(例外e){}
}
};
worker.execute();
}

您应该改为使用

它在SwingWorker worker=new SwingWorker()处有错误,而它在get()处有错误;”没有多大帮助。这是一个编译错误吗?在运行时是否会出现异常?哪一个?@Chio-Oho
AsyncFlag
是Android的
SwingWorker
,它只是一个不同的类名。背后的逻辑完全相同。为什么您需要一个
SwingWorker
?嗯,当我在java应用程序中运行该代码时,它是可以的。但当我把代码放在eclipse上时,它有错误。所以我会混淆Swingworker。你能编辑上面的代码吗?@Chio-Oho android应用程序实际上不是java应用程序,当然也不是swing应用程序。所以你必须坚持android框架。请看一看文档,我相信您会明白
AsyncTask
是如何工作的-逻辑是相同的,甚至方法名称也是相似的