0
所以我有一個數據庫,其中的用戶名與圖像的名稱相對應。所以在我的AsyncHTTP我檢索用戶名,並希望將該用戶名映射到其正確的圖像(所有圖像位於我的可繪製文件夾中)用異步更新圖像
在我的XML中,這幅圖像將呈現我只是把imageview,並從未分配它一個圖像(這個圖像的Id是myImage)
所以當我運行我的代碼時,圖像不會呈現。由於範圍問題,我無法在異步之外分配圖像。
Context context = this;
AsyncHTTPPost asyncHttpPost2 = new AsyncHTTPPost(
"http://lamp.ms.wits.ac.za/~s1363679/avatars.php", params) {
@Override
protected void onPostExecute(String s) {
try {
JSONArray all = new JSONArray(s);
for (int i = 0; i < all.length(); i++) {
JSONObject item = all.getJSONObject(i);
fName = item.getString("avatarName");
System.out.println();
Toast.makeText(Profile.this, fName, Toast.LENGTH_LONG).show();
ImageView Image = (ImageView) findViewById(R.id.myImage);
System.out.println("");
theName = fName;
//String imagename="kaius";
Resources res = context.getResources();
int resID = res.getIdentifier(theName, "drawable", context.getPackageName());
Image.setImageResource(resID);
}
} catch (Exception e) {
Toast.makeText(Profile.this, e.toString(), Toast.LENGTH_LONG).show();
}
}
};
asyncHttpPost2.execute();
}
imageName被正確地檢索並存儲在變量「theName」中,但它似乎沒有渲染到視圖上。