最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

在ScrollView添加一個(gè)ListView會(huì)導(dǎo)致listview控件顯示不全,通常只會(huì)顯示一條,究竟是什么原因呢?

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

解決辦法如下所示:

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()方法,設(shè)置全部顯示。

import android.widget.ListView; 
/** * * @Description: scrollview 中內(nèi)嵌 listview 的簡(jiǎn)單實(shí)現(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,如果不設(shè)置,系統(tǒng)默認(rèn)設(shè)置是顯示兩條 */ 
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只顯示一條的解決辦法,希望對(duì)大家有所幫助!

相關(guān)文章

  • maven項(xiàng)目pom.xml中parent標(biāo)簽的使用小結(jié)

    maven項(xiàng)目pom.xml中parent標(biāo)簽的使用小結(jié)

    使用maven是為了更好的幫項(xiàng)目管理包依賴,maven的核心就是pom.xml,當(dāng)我們需要引入一個(gè)jar包時(shí),在pom文件中加上就可以從倉(cāng)庫(kù)中依賴到相應(yīng)的jar包,本文就來(lái)介紹一下maven項(xiàng)目pom.xml中parent標(biāo)簽的使用小結(jié),感興趣的可以了解一下
    2023-12-12
  • springboot冪等切片的實(shí)現(xiàn)

    springboot冪等切片的實(shí)現(xiàn)

    本文主要介紹了springboot冪等切片的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Spring中實(shí)現(xiàn)定時(shí)調(diào)度的幾種方法

    Spring中實(shí)現(xiàn)定時(shí)調(diào)度的幾種方法

    本篇文章主要介紹了Spring中實(shí)現(xiàn)定時(shí)調(diào)度示例,可以在無(wú)人值守的時(shí)候系統(tǒng)可以在某一時(shí)刻執(zhí)行某些特定的功能,有興趣的可以了解一下。
    2017-02-02
  • 淺談springMVC接收前端json數(shù)據(jù)的總結(jié)

    淺談springMVC接收前端json數(shù)據(jù)的總結(jié)

    下面小編就為大家分享一篇淺談springMVC接收前端json數(shù)據(jù)的總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • 精辟全面且細(xì)致的java運(yùn)算符教程詳解

    精辟全面且細(xì)致的java運(yùn)算符教程詳解

    這篇文章主要介紹了java運(yùn)算符教程,內(nèi)容非常的精辟全面且細(xì)致到每一個(gè)小注意點(diǎn),正在學(xué)java的同學(xué)快快建議收藏閱讀吧,希望能夠有所幫助,祝多多進(jìn)步早日升職加薪
    2021-10-10
  • 詳解springMVC兩種方式實(shí)現(xiàn)多文件上傳及效率比較

    詳解springMVC兩種方式實(shí)現(xiàn)多文件上傳及效率比較

    本篇文章介紹了springMVC兩種方式實(shí)現(xiàn)多文件上傳及效率比較。springMVC實(shí)現(xiàn)多文件上傳有兩種,一種是字節(jié)流的方式進(jìn)行文件上傳,另外一種是使用springMVC包裝好的解析器進(jìn)行上傳,有興趣的可以了解一下。
    2016-12-12
  • Spring?Feign超時(shí)設(shè)置深入了解

    Spring?Feign超時(shí)設(shè)置深入了解

    Spring?Cloud中Feign客戶端是默認(rèn)開(kāi)啟支持Ribbon的,最重要的兩個(gè)超時(shí)就是連接超時(shí)ConnectTimeout和讀超時(shí)ReadTimeout,在默認(rèn)情況下,也就是沒(méi)有任何配置下,F(xiàn)eign的超時(shí)時(shí)間會(huì)被Ribbon覆蓋,兩個(gè)超時(shí)時(shí)間都是1秒
    2023-03-03
  • Java可以寫(xiě)android的應(yīng)用程序嗎

    Java可以寫(xiě)android的應(yīng)用程序嗎

    在本篇文章里小編給大家整理的是一篇關(guān)于Java可以寫(xiě)android的應(yīng)用程序嗎的相關(guān)基礎(chǔ)文章,有興趣的朋友們可以學(xué)習(xí)下。
    2020-11-11
  • Java多線程中的Executor詳解

    Java多線程中的Executor詳解

    這篇文章主要介紹了Java多線程中的Executor詳解,該接口提供了一種將任務(wù)提交與如何運(yùn)行每個(gè)任務(wù)的機(jī)制(包括線程使用、調(diào)度等細(xì)節(jié))解耦的方法,它通常使用預(yù)先創(chuàng)建線程而不是創(chuàng)建線程,需要的朋友可以參考下
    2023-12-12
  • Java HashMap 如何正確遍歷并刪除元素的方法小結(jié)

    Java HashMap 如何正確遍歷并刪除元素的方法小結(jié)

    這篇文章主要介紹了Java HashMap 如何正確遍歷并刪除元素的方法小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評(píng)論

沈丘县| 永顺县| 惠水县| 尖扎县| 蚌埠市| 峡江县| 锡林浩特市| 阿城市| 孟州市| 保康县| 义乌市| 外汇| 外汇| 乌审旗| 祁门县| 车险| 内黄县| 田阳县| 偏关县| 伊川县| 赤壁市| 花莲县| 孟津县| 忻州市| 沧州市| 马关县| 洛宁县| 桦川县| 郓城县| 团风县| 佳木斯市| 无锡市| 邯郸县| 惠水县| 大丰市| 开阳县| 辽宁省| 华坪县| 马公市| 晋宁县| 麻阳|