我从服务器获取与其相关的图像和文本的数量 现在我想在LinearLayout
中为每个图像设置文本(在底部)我从here
得到了问题第二部分的答案 button.setCompoundDrawables(left, top, right, bottom);
但问题是我正在获得不同大小的图像并想要调整它们的大小
我成功通过使用布局参数来调整Button的大小,但是
setCompoundDrawable(left,top,right,bottom);
图片未调整大小
我怎样才能实现这个目标?
答案 0 :(得分:1)
我希望下面的代码对你有用因为它与我合作
Bitmap bitmap = ImageResizeUtility.resizeBitmap(bitmap, 100, 110);
使用此类调整图像大小
public class ImageResizeUtility
{
public static Bitmap resizeBitmap(final Bitmap bitmap, final int width, final int height)
{
final int oldWidth = bitmap.getWidth();
final int oldHeight = bitmap.getHeight();
final int newWidth = width;
final int newHeight = height;
// calculate the scale
final float scaleWidth = ((float) newWidth) / oldWidth;
final float scaleHeight = ((float) newHeight) / oldHeight;
// create a matrix for the manipulation
final Matrix matrix = new Matrix();
// resize the Bitmap
matrix.postScale(scaleWidth, scaleHeight);
// if you want to rotate the Bitmap
// recreate the new Bitmap
final Bitmap resizedBitmap = Bitmap.createBitmap(bitmap, 0, 0, oldWidth, oldHeight, matrix, true);
return resizedBitmap;
}