2013-10-08 31 views
0

我正在创建一个与Calendar类似的应用程序。不过,我在显示日历时遇到问题。我希望gridview的高度与布局的高度一致。我怎样才能做到这一点?Gridview中的行的动态高度

谢谢!

+0

同样的事情,你的意思是GridView控件或高度的GridView的单元格高度? –

+0

@MajidDaeiNejad细胞的高度。例如,gridview的布局是100,我有5行。然后,细胞的高度是20.希望你明白我的意思 – lolyoshi

+0

也许这个答案可以帮助你https://stackoverflow.com/questions/21482989/how-to-assign-wrap-content-as-height-to -dynamically-loaded-gridview/46350213#46350213 –

回答

0
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)); 
    } 
} 

可能是你可以申请的GridView

+0

那么,正如我所说的,我需要动态高度的细胞。如果想在一个高度为100的区域触及gridview,并且我有5行。然后,我想单元格的高度是20.如果我有4行,单元格的高度是25 – lolyoshi