我的应用程序中有一个问题,setBackgroundResource占用了大量的处理时间。有没有办法在另一个线程中运行此方法,我尝试使用AsyncTask,但它无法访问UI线程。在处理此方法时,有没有办法执行其他任务? Thx提前。
答案 0 :(得分:0)
您可以在AsyncTask中加载drawable,然后从完成修改UI:
new AsyncTask<Void, Void, Drawable>() {
protected Drawable doInBackground(Void... ignored) {
return context.getResources().getDrawable(R.drawable.giant);
}
protected void onPostExecute(Drawable d) {
myView.setBackgroundDrawable(d);
}
}