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

ScrollView嵌套ListView及ListView嵌套的高度計算方法

 更新時間:2018年01月04日 14:18:04   作者:dreamGong  
下面小編就為大家分享一篇ScrollView嵌套ListView及ListView嵌套的高度計算方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

引言

在Android開發(fā)中,我們有時會需要使用ScrollView中嵌套ListView的需求。例如:在展示信息的ListView上還有一部分信息展示區(qū)域,并且要求這部分信息展示區(qū)域在ListView信息比較多的時候也是可以滑動的,而不是固定不變的。這時,我們一般會將ScrollView和ListView嵌套在一起使用。但是這會導(dǎo)致ListView展示不全,然后也會有滑動沖突問題。下面我們來看看怎么解決。

解決方案

主動計算和設(shè)置ListView的高度,這樣就可以合理的展示ListView的高度。代碼如下:

public void setListViewHeightBasedOnChildren(ListView listView) {
  // 獲取ListView對應(yīng)的Adapter
  ListAdapter listAdapter = listView.getAdapter();
  if (listAdapter == null) {
   return;
  }
  int totalHeight = 0;
  // listAdapter.getCount()返回數(shù)據(jù)項(xiàng)的數(shù)目
  for (int i = 0; i < listAdapter.getCount(); i++) {
   View listItem = listAdapter.getView(i, null, listView);
   // 計算子項(xiàng)View 的寬高
   listItem.measure(0, 0);
   // 統(tǒng)計所有子項(xiàng)的總高度
   totalHeight += listItem.getMeasuredHeight();
  }
  ViewGroup.LayoutParams params = listView.getLayoutParams();
  params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
  // listView.getDividerHeight()獲取子項(xiàng)間分隔符占用的高度
  // params.height最后得到整個ListView完整顯示需要的高度
  listView.setLayoutParams(params);
 }

以上這篇ScrollView嵌套ListView及ListView嵌套的高度計算方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 實(shí)例講解Android中的View類以及自定義View控件的方法

    實(shí)例講解Android中的View類以及自定義View控件的方法

    這篇文章主要介紹了Android中的View類以及自定義View控件的方法,講解了如何繼承View類并且展示了一個對View進(jìn)行重繪的例子,需要的朋友可以參考下
    2016-04-04
  • Android中通過反射實(shí)現(xiàn)圓角ImageView代碼實(shí)例

    Android中通過反射實(shí)現(xiàn)圓角ImageView代碼實(shí)例

    這篇文章主要介紹了Android中通過反射實(shí)現(xiàn)圓角ImageView代碼實(shí)例,本文直接給出核心實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-04-04
  • Android編程實(shí)現(xiàn)TextView部分顏色變動的方法

    Android編程實(shí)現(xiàn)TextView部分顏色變動的方法

    這篇文章主要介紹了Android編程實(shí)現(xiàn)TextView部分顏色變動的方法,實(shí)例分析了TextView設(shè)置指定位置的背景色與字體顏色的相關(guān)技巧,需要的朋友可以參考下
    2015-12-12
  • android列表控件實(shí)現(xiàn)展開、收縮功能

    android列表控件實(shí)現(xiàn)展開、收縮功能

    這篇文章主要為大家詳細(xì)介紹了android支持展開/收縮功能的列表控件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • RadioButton實(shí)現(xiàn)選擇后可取消選擇

    RadioButton實(shí)現(xiàn)選擇后可取消選擇

    這篇文章主要為大家詳細(xì)介紹了RadioButton實(shí)現(xiàn)選擇后可取消選擇,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 在Android打包中區(qū)分測試和正式環(huán)境淺析

    在Android打包中區(qū)分測試和正式環(huán)境淺析

    這篇文章主要給大家介紹了關(guān)于在Android打包中如何區(qū)分測試和正式環(huán)境的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起看看吧。
    2017-10-10
  • Android如何從實(shí)現(xiàn)到封裝一個MVP詳解

    Android如何從實(shí)現(xiàn)到封裝一個MVP詳解

    原生的 MVC 框架遇到大規(guī)模的應(yīng)用,就會變得代碼難讀,不好維護(hù),無法測試的囧境。因此,Android 開發(fā)方面也有很多對應(yīng)的框架來解決這些問題。所以這篇文章主要給大家介紹了關(guān)于Android如何從實(shí)現(xiàn)到封裝一個MVP的相關(guān)資料,需要的朋友可以參考下。
    2017-09-09
  • Android實(shí)現(xiàn)Tab切換界面功能詳解

    Android實(shí)現(xiàn)Tab切換界面功能詳解

    這篇文章主要為大家詳細(xì)介紹了Android如何實(shí)現(xiàn)Tab切換界面的功能,以及對Tab變化事件進(jìn)行監(jiān)聽。文中示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-05-05
  • Android設(shè)備上非root的抓包實(shí)現(xiàn)方法(Tcpdump方法)

    Android設(shè)備上非root的抓包實(shí)現(xiàn)方法(Tcpdump方法)

    通常我們在Android應(yīng)用中執(zhí)行某個命令時會使用“Runtime.getRuntime().exec("命令路徑")”這種方式,但是當(dāng)我們執(zhí)行抓包操作時,使用這條命令無論如何都不行,通過下面代碼打印結(jié)果發(fā)現(xiàn),該命令一定要在root權(quán)限下才能執(zhí)行,具體實(shí)現(xiàn)思路,請參考本教程
    2016-11-11
  • Kotlin 協(xié)程與掛起函數(shù)及suspend關(guān)鍵字深入理解

    Kotlin 協(xié)程與掛起函數(shù)及suspend關(guān)鍵字深入理解

    這篇文章主要為大家介紹了Kotlin 協(xié)程與掛起函數(shù)及suspend關(guān)鍵字深入理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12

最新評論

昌宁县| 浮梁县| 名山县| 莲花县| 来安县| 万州区| 平罗县| 岑巩县| 汉沽区| 定远县| 保康县| 柯坪县| 棋牌| 永定县| 阿拉善盟| 蒙阴县| 遂溪县| 乐至县| 新巴尔虎右旗| 南汇区| 简阳市| 寻甸| 枣阳市| 咸阳市| 南华县| 晋中市| 呼玛县| 易门县| 长子县| 新宁县| 晋城| 涟源市| 湖州市| 景洪市| 平罗县| 长沙市| 临沧市| 哈巴河县| 昭平县| 岳普湖县| 麻城市|