Android的GridView的项目行高度最大(android gridviews row hei

2019-07-30 08:38发布

我有简单的GridView。 它的元素具有不同的高度。 例如,在列有一个小元件和一个更大的,下一行就会对齐到更小的元件和更大的元件的一部分是在第二行之下。 如何设置的GridView的每一行的高度为在列的最大元素的高度??

我的GridView

<GridView xmlns:android="http://schemas.android.com/apk/res/android" 
                android:id="@+id/new_small_list"
                android:layout_width="fill_parent" 
                android:layout_height="wrap_content"
                android:numColumns="2"
                android:verticalSpacing="3dp"
                android:horizontalSpacing="3dp"
                android:stretchMode="columnWidth"
                android:gravity="center"
                android:cacheColorHint="@android:color/transparent"
            />

Answer 1:

因为当你写,例如设置单元格的高度,在GridViewAdapter:

@Override
public View getView(int position, View convertView, ViewGroup parent) {

        if(convertView == null){

            LayoutInflater cellLayout = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);             
            convertView = cellLayout.inflate(R.layout.gridcell_layout, null);
        }

        TextView cell_title = (TextView) convertView.findViewById(R.id.gridview_cell_text);         
        ImageView cell_icon = (ImageView) convertView.findViewById(R.id.griview_cell_image);
        ....

刚刚替补这一行:

convertView = cellLayout.inflate(R.layout.gridcell_layout, null);

有了这个:

convertView = cellLayout.inflate(R.layout.gridcell_layout, gridView, false);

通过这种方式,在“膨胀”设置家长参考,宽度和高度约为细胞将设置! 在这里你可以找到原因:

布局问题按钮保证金



文章来源: android gridviews row height max of item