我正在使用通用圖像視圖將圖像加載到我的應用程序中。獲取可繪製的imageView的大小以用作佔位符
這是我實現
public static void setBitmapToAImageviewUIL(final ImageView imageView, String uriPath, String imageName)
{
if(imageName != null && !imageName.equals(""))
{
//We use the local image as a temporary placeholder
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showStubImage(Utilities.getDrawableResource(imageName))
.cacheOnDisc()
.cacheInMemory()
.imageScaleType(ImageScaleType.EXACTLY)
.bitmapConfig(Bitmap.Config.ARGB_8888)
.build();
imageLoader.displayImage(uriPath, imageView, options);
}
}
方法中的邏輯是這樣的:我有一些在可繪的圖像的。首先,我使用本地drawable作爲佔位符(showStubImage)。 Utilities.getDrawableResource()
重新繪製drawable。然後,從服務器下載的圖像將在完成下載後顯示。
我的問題
用作佔位臨時圖像比從服務器下載圖像越大。所以起初圖像很大,然後當新圖像完成下載時就會縮小。我怎樣才能讓它們的imageView尺寸完全相同?
我試圖避免手動調整大小的代碼,使他們相同的大小。謝謝
PS:Utilities.getDrawableResource()
使用getResource().getIdentifier()
得到正確的drawable。
但是如何支持多種屏幕尺寸? –
您將固定尺寸放置在值文件夾內的dimens.xml中。根據需要,您可以在值 - 大或值 - sw600dp上創建其他dimens.xml – Budius