是的,您应该能够扩展 ASyncTask 并将模板变量更改为您需要的。Toast 类是一个静态类,因此可以从任何线程调用它而不必担心冲突。
我没有看到您上面的代码有任何问题,除非您不想经常调用新的 Toast 消息,因为它们会堆叠。因此,如果您要连续调用 .show() 函数,它将堆叠它们并继续每隔 LENGTH_SHORT 间隔显示新的 Toast 消息,直到它赶上。
至于 ASyncTask 的示例,请看:
private class MyAsync extends AsyncTask<<What to pass in to doInBackground>, <What to pass in to onProgressUpdate>, <What type onPostExecute receives>> {
protected T (result type to onPostExecute) doInBackground(T... urls) {
//Do big calculations in here
}
protected void onProgressUpdate(T... progress) {
//Update
}
protected void onPostExecute(T result) {
//Done
}
}