将view.measure(0,0)设置为0的时候表示,此时不需要考虑父控件的布局问题,直接使用getMeasuredWidth和getMeasuredHeight获取此view的自身的实际大小,可以看下面的例子:这个是在网上引用的一段代码

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19      public  class  Utility {              public  static  void  setListViewHeightBasedOnChildren(ListView listView) {                      ListAdapter listAdapter = listView.getAdapter();                      if  (listAdapter ==  null ) {                              // pre-condition                              return ;                     }                      int  totalHeight =  0 ;                      for  ( int  i =  0 ; i < listAdapter.getCount(); i++) {                              View listItem = listAdapter.getView(i,  null , listView);                              listItem.measure( 0 0 );                              totalHeight += listItem.getMeasuredHeight();                      }                        ViewGroup.LayoutParams params = listView.getLayoutParams();                      params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() -  1 ));                      listView.setLayoutParams(params);              }      }

更多相关文章

  1. Android-Listveiw的checkbox,Button焦点问题
  2. Android(安卓)4.4.4 锁屏界面时间大小修改
  3. AndroidAnnotations的使用
  4. 定义seekbar样式
  5. tab2
  6. Android实现购物车详情简单效果
  7. AndroidX RecyclerView总结-测量布局
  8. Android:Material Design之NavigationView使用
  9. Android(安卓)TextView控件

随机推荐

  1. 基于NDK的Android防破解
  2. Android(安卓)Studio导入项目gradle报错,
  3. Android(安卓)sdk content loader 0%的解
  4. 又优化了一下Android(安卓)ListView 异步
  5. AutoCAD即将为Android智能手机和平板电脑
  6. JNI和NDK学习(1)--搭建开发环境
  7. Android(安卓)解决android4.0系统中菜单(
  8. android 中vector的用法
  9. 记录WebView从开始加载到渲染结束的时间
  10. 使用Android辅助服务AccessibilityServic