我创建了一个简单的应用程序来显示来自 nasa RSS 提要的当天图像。现在我创建了一个刷新按钮,它将显示一个进度对话框,然后刷新页面。第一次单击时它工作正常,但下次单击时应用程序停止。
当按钮被点击时,方法 refreshform 被调用。这是创建的线程(在 onCreate 方法中并首先命名)....
私人无效刷新表单(){
dialog = ProgressDialog.show(
this,
"Loading",
"Loading the image of the Day");
//resetDisplay(handler.getTitle(),handler.getDate(),handler.getImage(),handler.getDescription());
th.start();
/* IotdHandler handler = new IotdHandler();
handler.processFeed();
resetDisplay(handler.getTitle(),handler.getDate(),handler.getImage(),handler.getDescription());*/
}
public void run()
{
if(Thread.currentThread().getName()=="first")
{
if(handler==null)
{
handler = new IotdHandler();
}
handler.processFeed();
handle.post(new Runnable()
{
public void run()
{
resetDisplay(handler.getTitle(),handler.getDate(),handler.getImage(),handler.getDescription());
dialog.dismiss();
}
});
}
else if(Thread.currentThread().getName()=="second")
{
WallpaperManager wp= WallpaperManager.getInstance(this);
try
{
wp.setBitmap(wallpaper);
handle.post(new Runnable()
{
public void run()
{
Toast.makeText(Start.this, "Wallpaper Set", Toast.LENGTH_SHORT).show();
}
}
);
}
catch(Exception e)
{
e.printStackTrace();
handle.post(new Runnable()
{
public void run()
{
Toast.makeText(Start.this, "Error Setting Wallpaper", Toast.LENGTH_SHORT).show();
}
}
);
}
}
}