我遇到了问题,我的布局是ImageView
。随着AsyncTask
我从网上加载图像。这是一张全景照片。如果我启动Fragment
,我将加载src="@drawable/pano"
的图像完美显示。它有全高,我可以滚动浏览全景。更改图像时更改ImageView大小
一旦新的图像加载到ImageView
的ImageView的重定比例,这样的高度:
之前的AsyncTask(图像从绘图资源加载中...):
这是后装的AsyncTask形象:
这里是我的xml文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:overScrollMode="never"
android:scrollbars="none" >
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/img1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:src="@drawable/pano" />
</RelativeLayout>
</HorizontalScrollView>
的AsyncTask代码:
public class DownloadPanorama extends
AsyncTask<ImageView, Void, Bitmap> {
ImageView imageView;
Bitmap bm;
public DownloadPanorama(ImageView mChart) {
imageView = mChart;
}
@Override
protected Bitmap doInBackground(ImageView... imageViews) {
return download_Image((String) imageView.getTag());
}
@Override
protected void onPostExecute(Bitmap result) {
imageView.setImageBitmap(result);
}
private Bitmap download_Image(String url) {
Bitmap bm = null;
try {
URL aURL = new URL(url);
URLConnection conn = aURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
bm = BitmapFactory.decodeStream(bis);
bis.close();
is.close();
return bm;
}
}
不使用的AsyncTask,只使用原始setImageBitmap时也发生了......所以我不知道如果我要改变scaleType
在我的XML文件,或者如果我需要在加载新图像后再次设置它?
尝试改变的ImageView'安卓layout_height'到'match_parent' – iTurki
感谢您的帮助。这不起作用:( – user754730
你可以发布你的'AsyncTask'代码吗? – Phil