Rap*_*rex 8 android timer handler android-asynctask
每隔5秒,我想调用我的web服务并获取文本(而不是图像),然后在我的ImageAdapter中显示它.实现这一目标的最佳方法是什么?
小智 8
final Handler handler = new Handler();
final Runnable r = new Runnable()
{
public void run()
{
callWebservice();
}
};
handler.postDelayed(r, 5000);
Run Code Online (Sandbox Code Playgroud)
这取决于您是否要使用其他线程.您是否希望用户能够在下载图像时与UI线程上的应用程序进行交互?如果是这样,那么我肯定会使用带有一个小ProgressBar()的AsyncTaskstyle="@android:style/Widget.ProgressBar.Small"
如果你不关心穿线那么@inazaruk说.
编辑:事实是,从Web服务检索数据的大多数现代应用程序将使用AsyncTask与角落中的谨慎小装载器,只是为了让用户知道它正在更新.
编辑2:这是一个使用TimerTask每5秒运行一次的例子.关键是runOnUiThread().可能有更好的方法将所有元素绑定在一起,但这准确地描绘了所有元素.
myTimer = new Timer();
myTimer.schedule(new TimerTask() {
@Override
public void run() {
CallWebService();
}
}, 0, 1000);
}
private void CallWebService()
{
this.runOnUiThread(fetchData);
}
private Runnable fetchData = new Runnable() {
public void run() {
asyncTask.execute();
}
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8623 次 |
| 最近记录: |