Android Gridview中行的动态高度
我正在创建一个与日历类似的应用程序。但是,我在显示日历时遇到了一个问题。我希望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
公共类助手{
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