zoukankan      html  css  js  c++  java
  • android开发中使不同的listview同时联动

           在做一个Android程序时,需要在一个屏幕上显示两个不同的listview,开始用< linearlayout>包裹这两个listview在<ScrollView >设置时,

    出现了不能同时联动的问题。

     其中一个listview是我需要把数据绑定到这张图片上,如图:

    绑定内容请忽略!!!

    后来才知道需要设定每个listview的高度,并且绑定到View中, 才能实现同时联动。

     1  public void SetListViewHeight(ListView listView) {    
     2         ListAdapter List_Adapter = listView.getAdapter();    
     3         if (List_Adapter  == null) {    
     4             return;    
     5         }    
     6         int ALLHeight = 0;    
     7         for (int i = 0; i < List_Adapter.getCount(); i++) {    
     8             View listItem = List_Adapter.getView(i, null, listView);    
     9             listItem.measure(0, 0);  // 在还没有构建View 之前无法取得View的度宽。在此之前我们必须选 measure 一下.   
    10             ALLHeight += listItem.getMeasuredHeight();    
    11         }    
    12         ViewGroup.LayoutParams params = listView.getLayoutParams();    
    13         params.height = ALLHeight + (listView.getDividerHeight() * (List_Adapter.getCount() - 1)); // listView.getDividerHeight()获取子项间分隔符占用的高度
    14            
    15                                                 // params.height得到整个ListView完整显示需要的高度    
    16         listView.setLayoutParams(params);    
    17     }

    在需要绑定的listview后面调用一下 “SetListViewHeight(ListView listView)”函数,就能实现两个或多个不同的listview同时联动。

  • 相关阅读:
    grpc 浅谈
    ticket项目所得
    odoo 安装
    Ubuntu 设置系统环境变量和开机自启动
    supervisor 错误集合
    Python之路--前端知识--HTML
    Python之路--Python基础14--MySQL
    Python之路--Python基础13--异步IO、RedisMemcached缓存、RabbitMQ队列
    Python之路--Python基础12--并发编程之协程
    Python之路--Python基础11--并发编程之线程
  • 原文地址:https://www.cnblogs.com/zxr63/p/5302404.html
Copyright © 2011-2022 走看看