如何设置ImageView的高度和宽度活动的Android
问题描述:
您好我想改变我的活动 内线高度和图像视图的width属性我试图在下面的方式,但它不是为我工作...如何设置ImageView的高度和宽度活动的Android
View card_view = getLayoutInflater().inflate(R.layout.card_details1,null);
coupon_img = (ImageView) card_view.findViewById(R.id.coupon_image);
// I tried this ////////
coupon_img.getLayoutParams().height = 20;
coupon_img.getLayoutParams().width = 20;
// I also tried this ////
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(100, 100);
coupon_img.setLayoutParams(layoutParams);
// also this one ////
coupon_img.setMaxHeight(10);
但我无法更改imageview src的高度和宽度。我在做什么错误? 如何做到这一点? 需要帮助... 谢谢...
答
在这一段代码,我在运行时创建ImageView
的新实例并设置层面:
// SET THE IMAGEVIEW DIMENSIONS
int dimens = 120;
float density = activity.getResources().getDisplayMetrics().density;
int finalDimens = (int)(dimens * density);
LinearLayout.LayoutParams imgvwDimens =
new LinearLayout.LayoutParams(finalDimens, finalDimens);
imgAlbumPhoto.setLayoutParams(imgvwDimens);
// SET SCALETYPE
imgAlbumPhoto.setScaleType(ScaleType.CENTER_CROP);
// SET THE MARGIN
int dimensMargin = 5;
float densityMargin = activity.getResources().getDisplayMetrics().density;
int finalDimensMargin = (int)(dimensMargin * densityMargin);
LinearLayout.LayoutParams imgvwMargin =
new LinearLayout.LayoutParams(finalDimens, finalDimens);
imgvwMargin.setMargins
(finalDimensMargin, finalDimensMargin, finalDimensMargin, finalDimensMargin);
这将设置ImageView
的尺寸。但是,他们将在px。从这里使用的代码,如果你需要DP值:https://*.com/a/9563438/450534
更新:
要更改已经在XML定义的现有ImageView
的尺寸,使用此:
coupon_img.setLayoutParams(new LayoutParams(100, 100));
答
尝试一些像这样的事情......
LayoutParams params = new LayoutParams(100, 100);
parantlayout.addView(coupon_img, params);
我认为这会帮助你。
答
我认为你不加入改变的图像布局..
LinearLayout ll = (LinearLayout)findViewById(R.layout.yourlinearlayout);
image.setLayoutParams(
new LinearLayout.LayoutParams(
bmp.getWidth(),
bmp.getHeight()));
ll.addView(image);// Then add the image to linear layout
使用缩放类型将图像src合并到imageView – 2013-02-21 06:18:19