ListView組件中嵌套GridView(重算GridView的高度)

應用場景:在ListView的子項中嵌套GridView,需要重算每一個子項GridView的高度,否則GridView只能顯示一行。

自定義Gridview:

import android.content.Context;
import android.util.AttributeSet;
import android.widget.GridView;

/**
 * 自定義GridView
 * <p>
 * Created by Karen Chia on 2019/4/1.
 *
 * @author Karen
 */
public class CustomGridView extends GridView {

    public FloorHouseNumberGridView(Context context) {
        super(context);
    }

    public FloorHouseNumberGridView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public FloorHouseNumberGridView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    /**
     * 設置不滾動(也就是讓GridView的所有行都顯示出來)
     */
    @Override
    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
                MeasureSpec.AT_MOST);
        super.onMeasure(widthMeasureSpec, expandSpec);
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章