欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ScrollView中嵌入ListView只顯示一條的解決辦法

 更新時間:2016年05月04日 17:19:22   作者:cao185493676  
在ScrollView添加一個ListView會導致listview控件顯示不全,通常只會顯示一條,究竟是什么原因呢?下面腳本之家小編給大家介紹ScrollView中嵌入ListView只顯示一條的解決辦法,感興趣的朋友一起學習吧

 通常情況下我們不會在ScrollView中嵌套ListView,但是如果面試官非讓我嵌套的話也是可以的。

在ScrollView添加一個ListView會導致listview控件顯示不全,通常只會顯示一條,究竟是什么原因呢?

兩個控件的滾動事件沖突導致。所以需要通過listview中的item數(shù)量去計算listview的顯示高度,從而使其完整展示,如下提供一個方法供大家參考。

解決辦法如下所示:

lv = (ListView) findViewById(R.id.lv); 
adapter = new MyAdapter(); 
lv.setAdapter(adapter); setListViewHeightBasedOnChildren(lv); 
--------------------------------------------------- 
public void setListViewHeightBasedOnChildren(ListView listView) { 
ListAdapter listAdapter = listView.getAdapter(); 
if (listAdapter == null) { 
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)); 
params.height += 5; 
listView.setLayoutParams(params); }

現(xiàn)階段最好的處理的方式是: 自定義ListView,重載onMeasure()方法,設置全部顯示。

import android.widget.ListView; 
/** * * @Description: scrollview 中內(nèi)嵌 listview 的簡單實現(xiàn) 
* * @File: ScrollViewWithListView.java 
* * * @Version */ 
public class ScrollViewWithListView extends ListView { 
public ScrollViewWithListView(android.content.Context context, android.util.AttributeSet attrs) { super(context, attrs); } 
/** 
* Integer.MAX_VALUE >> 2,如果不設置,系統(tǒng)默認設置是顯示兩條 */ 
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST); super.onMeasure(widthMeasureSpec, expandSpec); 
} 
}

以上內(nèi)容是小編給大家介紹的ScrollView中嵌入ListView只顯示一條的解決辦法,希望對大家有所幫助!

相關(guān)文章

  • Java多例Bean的應用場景-easyExcel導入

    Java多例Bean的應用場景-easyExcel導入

    EasyExcel 是一個基于 Java 的簡單、省內(nèi)存的讀寫 Excel 的開源項目。這篇文章主要介紹了用easyExcel導入Java Bean的應用場景,感興趣的朋友可以參考閱讀
    2023-04-04
  • Java如何使用正則表達式從字符串中提取數(shù)字

    Java如何使用正則表達式從字符串中提取數(shù)字

    這篇文章主要介紹了Java如何使用正則表達式從字符串中提取數(shù)字問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Spring5學習之基礎(chǔ)知識總結(jié)

    Spring5學習之基礎(chǔ)知識總結(jié)

    這篇文章主要介紹了Spring5學習之基礎(chǔ)知識總結(jié),文中有非常詳細的代碼示例,對正在學習java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • Netty中的心跳檢測機制詳解

    Netty中的心跳檢測機制詳解

    這篇文章主要介紹了Netty中的心跳檢測機制詳解,Netty 是 基于 TCP 協(xié)議開發(fā)的,在四層協(xié)議 TCP 協(xié)議的實現(xiàn)中也提供了 keepalive 報文用來探測對端是否可用,TCP 層將在定時時間到后發(fā)送相應的 KeepAlive 探針以確定連接可用性,需要的朋友可以參考下
    2023-12-12
  • Java中JavaBean對象和Map的互相轉(zhuǎn)換方法實例

    Java中JavaBean對象和Map的互相轉(zhuǎn)換方法實例

    為什么需要將javaBean和map進行轉(zhuǎn)換,在很多應用場景中,需要將key=value形式的數(shù)據(jù)與javaBean對象相互轉(zhuǎn)換,下面這篇文章主要給大家介紹了關(guān)于Java中JavaBean對象和Map的互相轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • 導出maven項目依賴的jar包(圖文教程)

    導出maven項目依賴的jar包(圖文教程)

    下面小編就為大家?guī)硪黄獙С鰉aven項目依賴的jar包(圖文教程)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 使用curator實現(xiàn)zookeeper鎖服務的示例分享

    使用curator實現(xiàn)zookeeper鎖服務的示例分享

    這篇文章主要介紹了使用curator實現(xiàn)zookeeper鎖服務的示例,需要的朋友可以參考下
    2014-02-02
  • SpringBoot項目微信云托管入門部署實踐

    SpringBoot項目微信云托管入門部署實踐

    本文主要介紹了SpringBoot項目微信云托管入門部署實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • SpringBoot集成Mybatis過程步驟圖解

    SpringBoot集成Mybatis過程步驟圖解

    這篇文章主要介紹了SpringBoot集成Mybatis過程步驟圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • SpringBoot+Dubbo+Seata分布式事務實戰(zhàn)詳解

    SpringBoot+Dubbo+Seata分布式事務實戰(zhàn)詳解

    這篇文章主要介紹了SpringBoot+Dubbo+Seata分布式事務實戰(zhàn)詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07

最新評論