2013-10-08 32 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