[英]set Image View height and width in Grid View
我想在我的應用程序中創建一個圖片庫
我使用網格視圖顯示圖像,但圖像顯示混亂
我如何顯示相等的圖像?例如其他圖像庫應用程序
布局文件:
<GridView
android:id="@+id/galleryGridView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="3"
android:rowCount="3"
android:stretchMode="columnWidth"
android:verticalSpacing="0dp"
android:horizontalSpacing="0dp" />
Java文件:
public class GalleryManager extends BaseAdapter {
Context context;
List<Drawable> list;
public GalleryManager(Context context , List<Drawable> list ) {
this.context = context;
//this.list = list;
this.list = list;
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return position;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
try {
ImageView imageView = new ImageView(context);
imageView.setImageDrawable(list.get(position));
imageView.setScaleType(ImageView.ScaleType.CENTER);
return imageView;
}
catch(Exception e){
Log.i("Tag", "getView: "+e.toString());
}
return null;
}
}
嘗試
public class MyImageView extends android.support.v7.widget.AppCompatImageView {
public MyImageView(Context context) {
super(context);
}
public MyImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyImageView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
// super.onMeasure(widthMeasureSpec, heightMeasureSpec);
int size = getContext().getResources().getDimensionPixelSize(R.dimen.space);
setMeasuredDimension(size, size);
}
}
在dimen.xml中
<dimen name="space">100dp</dimen>
和
@Override
public View getView(int position, View convertView, ViewGroup parent) {
try {
MyImageView imageView = new MyImageView(context);
imageView.setImageDrawable(list.get(position));
imageView.setScaleType(ImageView.ScaleType.CENTER);
return imageView;
}
catch(Exception e){
Log.i("Tag", "getView: "+e.toString());
}
return null;
}
}
嘗試在Java代碼中將圖像權重設置為1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.