Android Gridview中行的动态高度

Android Gridview中行的动态高度,android,gridview,calendar,Android,Gridview,Calendar,我正在创建一个与日历类似的应用程序。但是,我在显示日历时遇到了一个问题。我希望gridview的高度与布局的高度固定。我该怎么做 谢谢 公共类助手{ public class Helper { public static void getListViewSize(ListView myListView) { ListAdapter myListAdapter = myListView.getAdapter(); if (myListAdapter == n

我正在创建一个与日历类似的应用程序。但是,我在显示日历时遇到了一个问题。我希望gridview的高度与布局的高度固定。我该怎么做

谢谢

公共类助手{
public class Helper {
    public static void getListViewSize(ListView myListView) {
        ListAdapter myListAdapter = myListView.getAdapter();
        if (myListAdapter == null) {
            // do nothing return null
            return;
        }
        // set listAdapter in loop for getting final size
        int totalHeight = 0;
        for (int size = 0; size < myListAdapter.getCount(); size++) {
            View listItem = myListAdapter.getView(size, null, myListView);
            listItem.measure(0, 0);
            totalHeight += listItem.getMeasuredHeight();
        }
        // setting listview item in adapter
        ViewGroup.LayoutParams params = myListView.getLayoutParams();
        params.height = totalHeight
                + (myListView.getDividerHeight() * (myListAdapter.getCount() - 1));
        myListView.setLayoutParams(params);
        // print height of adapter on log
        Log.i("height of listItem:", String.valueOf(totalHeight));
    }
}
公共静态无效getListViewSize(ListView myListView){ ListAdapter myListAdapter=myListView.getAdapter(); if(myListAdapter==null){ //不执行任何操作返回空值 返回; } //在循环中设置listAdapter以获取最终大小 int totalHeight=0; 对于(int size=0;size

您可以申请gridview,这可能是一样的

您指的是gridview的单元格高度还是gridview的高度?@MajidDaeiNejad单元格高度。例如,gridview的布局是100,我有5行。然后,单元的高度是20。希望你理解我的意思。也许这个答案可以帮助你,正如我提到的,我需要一个动态高度的细胞。如果要在高度为100的区域中放置gridview,我有5行。然后,我想这个牢房的高度是20。如果我有4行,单元格的高度是25