在我的应用程序中,我在屏幕“A”上有一个imageview,在屏幕“B”上有一个webview。
在屏幕“A”上我启动同步任务,以便下载png文件并将其显示到imageview中。
在屏幕“B”上,我加载了一些HTML信息。其中包括指向屏幕“A”上相同png的链接。
问题是两个屏幕上的相同图像看起来不同。在imageview中加载时,png看起来比在webview中加载时更小。
imageview的高度和宽度设置为wrap_content。没有额外的缩放或类似的东西。
为什么会这样?
--- --- EDIT
屏幕“A”布局
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background_repeat">
<ImageView
android:id="@+id/logo_image_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_gravity="center_horizontal"/>
</RelativeLayout>
屏幕“B”布局
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<WebView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/about_us_web_view"
/>
</RelativeLayout>
屏幕“A”asyncTask
private class DownloadLogoTask extends AsyncTask<ImageView, String, Bitmap> {
private String urlString;
public DownloadLogoTask(String urlString) {
this.urlString = urlString;
}
@Override
protected Bitmap doInBackground(ImageView... imageViews) {
try {
URL url = new URL(urlString);
HttpURLConnection urlConnection = (HttpURLConnection)url.openConnection();
InputStream is = urlConnection.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(is);
if(bitmap != null) {
return bitmap;
}
} catch (Exception e) {
}
return null;
}
@Override
protected void onPostExecute(Bitmap result) {
if(result != null) {
logoImageView.setImageBitmap(result);
}
}
}
屏幕“B”使用webView
aboutUsWebView.loadData(descriptionStr, "text/html", "UTF-8");