解決Android中,禁止ScrollView內的控制項改變之後自動滾動 - 轉

來源:互聯網
上載者:User

標籤:lis   plain   fill   blank   size   分享   體驗   divide   線上   

問題:

最近在寫一個程式介面,有一個scrollVIew,其中有一段內容是需要線上載入的。

當內容載入完成後,ScrollView中內容的長度會發生改變,這時ScrollView會自動下滾,如所示:

滾動的那一下體驗特別不好,所以要防止這種情況。即不論Scrollview中內容如何,都要保持在最上。

 

解決辦法:

先簡單寫一下我的xml檔案的結構:

 

[html] view plain copy 
  1.  <ScrollView  
  2.         android:id="@+id/scrollView1"  
  3.         android:layout_width="fill_parent"  
  4.         android:layout_height="fill_parent"  
  5.         android:layout_alignParentLeft="true"  
  6.         android:layout_below="@+id/linearLayout2"  
  7.         android:background="@drawable/repeat_bg"  
  8.         android:paddingBottom="5dp" >  
  9.   
  10.         <LinearLayout  
  11.             android:layout_width="match_parent"  
  12.             android:layout_height="match_parent"  
  13.             android:orientation="vertical"  
  14.             android:paddingLeft="10dp"  
  15.             android:paddingRight="10dp"  
  16.             android:focusable="true"  
  17.             android:focusableInTouchMode="true"     
  18.             android:paddingTop="15dp" >  
  19. <!-- 上面這兩行是控制scrollview   
  20.             android:focusable="true"  
  21.             android:focusableInTouchMode="true"     
  22. 不自動的關鍵! !-->  
  23.   
  24.   
  25.             <LinearLayout  
  26.                 android:layout_width="match_parent"  
  27.                 android:layout_height="wrap_content"  
  28.                 android:orientation="vertical" >  
  29.   
  30.                 <ListView  
  31.                     android:id="@+id/lv_gc"  
  32.                     android:layout_marginTop="5dp"  
  33.                     android:layout_width="match_parent"  
  34.                     android:layout_height="20dp"  
  35.                     android:background="#aaffffff"  
  36.                     android:divider="#666"               
  37.                     android:scrollbars="none|vertical" >  
  38.   
  39.                 </ListView>  
  40.   
  41.             </LinearLayout>  
  42.         </LinearLayout>  
  43. </ScrollView>  


如上面代碼,我的ScrollView中第一個內容是LinearLayout,下面有一個LinearLayout包裹著的ListView.ListView是長度可變的。

 

將LinearLayout中加入代碼:

 

[html] view plain copy 
  1. android:focusable="true"  
  2. android:focusableInTouchMode="true"   

問題即可解決,歡迎大家交流。

 

轉載請註明來自:http://blog.csdn.net/icyfox_bupt/article/details/15026299

解決Android中,禁止ScrollView內的控制項改變之後自動滾動 - 轉

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.