1
백그라운드에서 수행하고 싶은 두 가지 작업이 있지만 백그라운드에서 수행하고 완료되면지도를 반환하는 것이 좋을 수 있다고 생각했습니다.Android Java : 하나 이상의 작업이 작동하는 AsyncTask에서는 어떻게됩니까?
하지만 내 문제는 그 중 하나가 처리되지 않았거나 적어도 둘 다 처리해야하는지 잘 모르겠다는 것입니다.
내 코드는 다음과 같습니다.
final TextView v = (TextView) P.findViewById(R.id.abbr);
final SimpleDraweeView i = (SimpleDraweeView) P.findViewById(R.id.icon);
new AsyncTask<Object, Object, HashMap<String, Object>>() {
@Override
protected HashMap<String, Object> doInBackground(Object... params) {
String k = SyncProfiles.getIcon(A, C.getNumber());
Drawable dr;
if (k == null) {
dr = H.setDrawableColor(A, R.drawable.contact_user_bg, H.aoRandColor());
} else {
dr = null;
}
HashMap<String, Object> r = new HashMap<>();
r.put("bg", dr);
r.put("url", Images.ImageServerResize(k, 180));
return r;
}
@Override
protected void onPostExecute(HashMap<String, Object> o) {
v.setText(C.getName().trim().substring(0, 1));
if (o.get("url") == null) {
contact_bg.setBackground((Drawable) o.get("bg"));
i.setVisibility(View.GONE);
} else {
i.setImageURI(Uri.parse((String) o.get("url")));
i.setVisibility(View.VISIBLE);
}
}
}.execute();
두 번째 'AsyncTask'는 어디에 있습니까? –
@ ρяσѕρєяK, 하나의 AsyncTask입니다. 두 개의 연산을 내부에서 수행하고 싶습니다. – Relm