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

Android中l(wèi)istview嵌套scrollveiw沖突的解決方法

 更新時間:2017年01月25日 10:57:30   作者:墮落8  
這篇文章主要為大家詳細(xì)介紹了Android中l(wèi)istview嵌套scrollveiw沖突的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

一.使用網(wǎng)上用的動態(tài)改變listview高度的方法

該方法只適用于item布局是LinearLayout布局的情況,不能是其他的,因為其他的Layout(如RelativeLayout)沒有重寫onMeasure(),所以會在onMeasure()時拋出異常。所以使用限制較大。

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

二.網(wǎng)上有帖子說在ScrollView中添加一屬性 android:fillViewport="true" ,這樣就可以讓ListView全屏顯示了。在我機器上測試失敗了。

三.重寫ListView、gridView(推薦)

重寫ListView:

public class MyListView extends ListView { 
 
  public MyListView(Context context) { 
    // TODO Auto-generated method stub 
    super(context); 
  } 
 
  public MyListView(Context context, AttributeSet attrs) { 
    // TODO Auto-generated method stub 
    super(context, attrs); 
  } 
 
  public MyListView(Context context, AttributeSet attrs, int defStyle) { 
    // TODO Auto-generated method stub 
    super(context, attrs, defStyle); 
  } 
 
  @Override 
  protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
    // TODO Auto-generated method stub 
    int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, 
        MeasureSpec.AT_MOST); 
    super.onMeasure(widthMeasureSpec, expandSpec); 
  } 
} 

重寫GridView:

/** 
 *自定義gridview,解決ScrollView中嵌套gridview顯示不正常的問題(1行) 
 */ 
public class MyGridView extends GridView{ 
   public MyGridView(Context context, AttributeSet attrs) {  
      super(context, attrs);  
    }  
    
    public MyGridView(Context context) {  
      super(context);  
    }  
    
    public MyGridView(Context context, AttributeSet attrs, int defStyle) {  
      super(context, attrs, defStyle);  
    }  
    
    @Override  
    public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {  
    
      int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,  
          MeasureSpec.AT_MOST);  
      super.onMeasure(widthMeasureSpec, expandSpec);  
    }  
} 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android使用ViewPager實現(xiàn)屏幕滑動效果

    Android使用ViewPager實現(xiàn)屏幕滑動效果

    這篇文章主要為大家詳細(xì)介紹了Android使用ViewPager實現(xiàn)屏幕滑動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Android原生TabLayout使用的超全解析(看這篇就夠了)

    Android原生TabLayout使用的超全解析(看這篇就夠了)

    現(xiàn)在很多app都有頂部可左右切換的導(dǎo)航欄,并且還帶動畫效果,要實現(xiàn)這種導(dǎo)航欄,可以使用Android原生的Tablayout也可以借助第三方框架實現(xiàn),這篇文章主要給大家介紹了關(guān)于Android原生TabLayout使用的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • Android開發(fā)中一個簡單實用的調(diào)試應(yīng)用技巧分享

    Android開發(fā)中一個簡單實用的調(diào)試應(yīng)用技巧分享

    這篇文章主要跟大家分享了一個簡單實用的Android調(diào)試應(yīng)用技巧,文中介紹的非常詳細(xì),相信對大家具有一定的參考學(xué)習(xí)價值,需要的朋友下面來一起看看吧。
    2017-05-05
  • Android實現(xiàn)驗證碼登錄

    Android實現(xiàn)驗證碼登錄

    這篇文章主要為大家詳細(xì)介紹了Android實現(xiàn)驗證碼登錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Android?TextView冷門實用方法技巧

    Android?TextView冷門實用方法技巧

    這篇文章主要為大家介紹了Android?TextView冷門實用方法技巧示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Android里實現(xiàn)退出主程序的提示代碼

    Android里實現(xiàn)退出主程序的提示代碼

    當(dāng)用戶選擇"確定",就退出當(dāng)前的對話框。其中,有個很重要的函數(shù),Activity.finish(),通過調(diào)用這個函數(shù),退出當(dāng)前運行的整個Android程序
    2013-06-06
  • Android事件分發(fā)機制深入刨析原理及源碼

    Android事件分發(fā)機制深入刨析原理及源碼

    Android?的事件分發(fā)機制大體可以分為三部分:事件生產(chǎn)、事件分發(fā)?、事件消費。事件的生產(chǎn)是由用戶點擊屏幕產(chǎn)生,我們這次著重分析事件的分發(fā)和消費,因為事件分發(fā)和處理聯(lián)系的過于緊密,這篇文章將把事件的分發(fā)和消費放在一起分析
    2023-04-04
  • Android 圓角按鈕的實現(xiàn)代碼

    Android 圓角按鈕的實現(xiàn)代碼

    這篇文章主要介紹了Android 圓角按鈕的實現(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-12-12
  • Android 開發(fā)使用Activity實現(xiàn)加載等待界面功能示例

    Android 開發(fā)使用Activity實現(xiàn)加載等待界面功能示例

    這篇文章主要介紹了Android 開發(fā)使用Activity實現(xiàn)加載等待界面功能,結(jié)合實例形式詳細(xì)分析了Android基于Activity實現(xiàn)加載等待界面布局與功能操作技巧,需要的朋友可以參考下
    2020-05-05
  • android仿支付寶、微信密碼輸入框效果

    android仿支付寶、微信密碼輸入框效果

    這篇文章主要為大家詳細(xì)介紹了android仿支付寶、微信密碼輸入框效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12

最新評論