I have an Android Application, where I have an ImageView
, I need to keep the size constant, there can be various images that I need to put into this ImageView
, of different sizes.
I just need to ensure that all the Images must fit into the ImageView
,
the Image should increase in size if it is smaller and should decrease, in case it is bigger.
Thanks a lot for your time.
This question is related to
android
imageview
android-imageview
Fix ImageView's size with dp
or fill_parent
and set android:scaleType
to fitXY
.
Try this
ImageView img
Bitmap bmp;
int width=100;
int height=100;
img=(ImageView)findViewById(R.id.imgView);
bmp=BitmapFactory.decodeResource(getResources(),R.drawable.image);//image is your image
bmp=Bitmap.createScaledBitmap(bmp, width,height, true);
img.setImageBitmap(bmp);
Or If you want to load complete image size in memory then you can use
<ImageView
android:id="@+id/img"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/image"
android:scaleType="fitXY"/>
In your case you need to
android:scaleType
to fitXY
Below is an example:
<ImageView
android:id="@+id/photo"
android:layout_width="200dp"
android:layout_height="100dp"
android:src="@drawable/iclauncher"
android:scaleType="fitXY"/>
For more information regarding ImageView scaleType please refer to the developer website.
I had the same issue and this helped me.
<ImageView
android:id="@+id/image"
android:layout_width="100dp"
android:layout_height="100dp"
android:scaleType="fitXY"
/>
You can also try this, suppose if you want to make a back image button and you have "500x500 png" and want it to fit in small button size.
add this line of code to your Imageview.
android:scaleType="fitXY"
EXAMPLE:
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:id="@+id/imageView2"
android:src="@drawable/Backicon"
android:scaleType="fitXY"
/>
Source: Stackoverflow.com