在列表視圖中的每一項將圖像加載不顯示。給定項目的數據,返回資源的id(可繪製)。這個id用在imageview的setResourceId中。
問題
當APK簽署無任何顯示(但沒有出現錯誤)。
測試
確保該資源的正確的ID被加載。一個項目被創建,其匹配的資源是R.drawable.banana,所述ID由該函數返回已登錄以及值R.drawable.banana(如下所示)。
int id = CropDataHelper.getCropsDrawable(myContext, txt);
Log.i("image id:"+id,"found id Fragment View Cycles");
Log.i("raw draw:"+R.drawable.banana,"drawable Fragment View Cycles");
記錄的值是相同的,因此返回正確的ID。
進一步測試顯示
如果直接使用資源,R.drawable.example顯示圖像,即使該函數返回的值相同。
id = R.drawable.banana;
...
iv.setImageResource(id);
上一頁失敗嘗試
- 把資源劃分爲不同的文件夾(無DPI等)
folder attempt reference。然而,由於圖片確實顯示我是否使用 直接R參考這是一個毫無根據的嘗試。
- 使用繪製資源
使用ID實現直接加載繪製並進行設置。
Drawable d = ContextCompat.getDrawable(myContext,id);
...
iv.setImageDrawable(d);
實際的代碼片段
int id = CropDataHelper.getCropsDrawable(myContext, txt);
Log.i("image id:"+id,"found id Fragment View Cycles");
Log.i("raw draw:"+R.drawable.banana,"drawable Fragment View Cycles");
// id = R.drawable.banana; - testing use of direct resource
// Drawable d = ContextCompat.getDrawable(myContext,id); drawable attempt
ImageView iv = ((ImageView) row.findViewById(R.id.icon_purchaseType));
if (id != -1) {
iv.setImageResource(id);
// iv.setImageDrawable(d); - drawable attempt
}
結語
在調試時,只對簽署過的APK不會發生的問題,這讓我相信有一些潛在的權限,R.drawable.example在已簽名的apk上解鎖,但試圖直接使用這些ID時s沒有解鎖。任何幫助表示讚賞,謝謝。