Android广场imageview

即时尝试制作与方形图像(和所有相同的大小)的表。 问题是图像有不同的高度和宽度。 表格是3×3,我想:每个单元格有一个=屏幕宽度的1/3(也许与布局的权重?)和高度=宽度好多了,如果有一种方法来定义,在XML比在代码中。 请解释一下,因为我是一个noob与布局权重=(预先感谢,

Solutions Collecting From Web of "Android广场imageview"

尝试scaleType属性。 我想,你想要centerCrop

那么你也可以使用scaleType = fitXY将每个图像压缩到imageview的尺寸

扩展imageveiw可能是最干净的解决scheme。 这适用于我:

 public class Icon extends ImageView { public Icon(final Context context) { super(context); } public Icon(final Context context, final AttributeSet attrs) { super(context, attrs); } public Icon(final Context context, final AttributeSet attrs, final int defStyle) { super(context, attrs, defStyle); } @Override protected void onMeasure(int width, int height) { super.onMeasure(width, height); int measuredWidth = getMeasuredWidth(); int measuredHeight = getMeasuredHeight(); if (measuredWidth > measuredHeight) { setMeasuredDimension(measuredHeight, measuredHeight); } else { setMeasuredDimension(measuredWidth, measuredWidth); } } } 

而在xml中:

 <com.your_package_name.Icon android:layout_width="wrap_content" android:layout_height="wrap_content" android:scaleType="centerCrop" android:src="@drawable/screen" />