android-imageview-set-width-and-height
//-------------INside OnCreate Method-----------
final ImageView imageView = (ImageView)convertView.findViewById(R.id.imageview_cover_art); // 4 int newHeight = 200; // New height in pixelsint newWidth = 200; // New width in pixels /* requestLayout() Call this when something has changed which has invalidated the layout of this view. */imageView.requestLayout(); /* getLayoutParams() Get the LayoutParams associated with this view. */ // Apply the new height for ImageView programmaticallyimageView.getLayoutParams().height = newHeight; // Apply the new width for ImageView programmaticallyimageView.getLayoutParams().width = newWidth; // Set the scale type for ImageView image scalingimageView.setScaleType(ImageView.ScaleType.FIT_XY); BooksAdapter.DownloadImageWithURLTask downloadTask = new BooksAdapter.DownloadImageWithURLTask(imageView); downloadTask.execute(book.getImageUrl());
//-------------outside OnCreate Method-----------
private class DownloadImageWithURLTask extends AsyncTask<String, Void, Bitmap> { ImageView bmImage; public DownloadImageWithURLTask(ImageView bmImage) { this.bmImage = bmImage; } protected Bitmap doInBackground(String... urls) { String pathToFile = urls[0]; Bitmap bitmap = null; try { InputStream in = new java.net.URL(pathToFile).openStream(); bitmap = BitmapFactory.decodeStream(in); } catch (Exception e) { Log.e("Error", e.getMessage()); e.printStackTrace(); } return bitmap; } protected void onPostExecute(Bitmap result) { bmImage.setImageBitmap(result); } }
//---------------------end-----------------
How to set ImageView width and height programmatically in Android
activity_main.xml
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/rl"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
tools:context=".MainActivity"
android:background="#c0cfd3"
>
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Set ImageView New Width, Height"
/>
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/btn"
android:src="@drawable/animal"
android:background="#bfbbb1"
/>
</RelativeLayout>
MainActivity.java
package com.cfsuman.me.androidcodesnippets;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.RelativeLayout;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Get the widgets reference from XML layout
final RelativeLayout rl = (RelativeLayout) findViewById(R.id.rl);
final Button btn = (Button) findViewById(R.id.btn);
final ImageView iv = (ImageView) findViewById(R.id.iv);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int newHeight = 200; // New height in pixels
int newWidth = 200; // New width in pixels
/*
requestLayout()
Call this when something has changed which has
invalidated the layout of this view.
*/
iv.requestLayout();
/*
getLayoutParams()
Get the LayoutParams associated with this view.
*/
// Apply the new height for ImageView programmatically
iv.getLayoutParams().height = newHeight;
// Apply the new width for ImageView programmatically
iv.getLayoutParams().width = newWidth;
// Set the scale type for ImageView image scaling
iv.setScaleType(ImageView.ScaleType.FIT_XY);
}
});
}
}
- How to set an image to ImageView
- How to set an image to ImageView in XML
- How to programmatically set image to ImageView
- How to set ImageView image from URL
- How to set ImageView image from drawable
- How to set ImageView image from Assets
- How to set a bitmap to ImageView
- How to create an ImageView programmatically
- How to set OnClickListener for an ImageButton
- How to use ImageButton different image ScaleType
Comments
Post a Comment