1.在ScrollView中添加一属性 android:fillViewport="true" ,这样就可以让ListView全屏显示了

2.指定ListView的高度 android:layout_height="420dp" ;   或单独写一个方法:

import android.view.View;
import android.view.ViewGroup;
import android.widget.ListAdapter;
import android.widget.ListView;

public class ListViewUnScoll {
   public static void setListViewHeightBasedOnChildren(ListView listView) {
   
          //获取ListView对应的Adapter

          ListAdapter listAdapter = listView.getAdapter();

          if (listAdapter == null) {

                 return;

          }

         

          int totalHeight = 0;

          for (int i = 0, len = listAdapter.getCount(); i < len; i++) {   //listAdapter.getCount()返回数据项的数目

                 View listItem = listAdapter.getView(i, null, listView);

                 listItem.measure(0, 0);  //计算子项View 的宽高

                 totalHeight += listItem.getMeasuredHeight();  //统计所有子项的总高度

          }

         

          ViewGroup.LayoutParams params = listView.getLayoutParams();

          params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));

          //listView.getDividerHeight()获取子项间分隔符占用的高度

          //params.height最后得到整个ListView完整显示需要的高度

          listView.setLayoutParams(params);

   }
}

更多相关文章

  1. Android控件的高度,宽度设置
  2. Android下动态获取View的高度或宽度
  3. Android(安卓)ListView高度问题
  4. Android(安卓)View - 实现流式布局
  5. Android屏幕自适应4种解决方案
  6. Android中获取控件的宽度以及高度的几种方法
  7. 使用主题Theme实现Android沉浸式状态栏
  8. android中关于scrollview内部组件android:layout_height="fill_p
  9. 一行代码搞定Android屏幕适配

随机推荐

  1. Photoshop Elements:做出完美大合照,让笑容
  2. 我用注解实现了优雅的跨库查询,架构师竖起
  3. NA(Nirvana)公链“为应用而生” NAC公链
  4. Vsftpd虚拟用户登录
  5. 设计模式3之抽象工厂模式
  6. 这款手绘风格的在线制图软件超棒
  7. 什么是Exadata Smart Scan?
  8. 公司DBA关于MySQL开发的一点经验
  9. 公益课,RWP团队谈性能优化之大开眼界篇来
  10. 服务器指纹识别之 DNS TXT