我有一个GridView,我将ImageViews添加到并随机放置drawables作为生成网格的资源,如下图所示。
我希望图像缩放,以便它们之间的唯一间隙是填充,我还想匹配它在列之间的间距,对于行,以便gridView将始终是一个适合的正方形到屏幕的宽度(加上边距)。图像之间的最小间隙将是我设置的填充,因此如果屏幕大或小,图像将向上或向下缩放以使网格视图适合宽度。
那我该怎么做呢?
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF" >
<GridView
android:id="@+id/grid"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_centerInParent="true"
android:layout_marginTop="50dp"
android:columnWidth= "50dp"
android:stretchMode="spacingWidthUniform"
android:gravity="center"
android:clickable="true">
</GridView>
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
randomPosition = rng.nextInt(gridSize);
imageView = new ImageView(mContext);
imageView.setPadding(2, 2, 2, 2);
}
else {
imageView = (ImageView) convertView;
}
imgSet();
return imageView;
}
public void imgSet(){
if (diff == 1){
imageView.setImageResource(mThumbIds[randomPosition]);
}
if (diff == 2){
imageView.setImageResource(mThumbIds2[randomPosition]);
}
if (diff == 3){
imageView.setImageResource(mThumbIds3[randomPosition]);
}
}
答案 0 :(得分:0)
如果Image Scaling是您的问题,您可以尝试缩放图像以适合imageView并将它们放在网格上。
尝试android:scaleType =&#34; fitXY&#34;
根据您的需要尝试scaleType中的其他选项