1. 程式人生 > >scrollview巢狀listview進頁面不在頂部

scrollview巢狀listview進頁面不在頂部

scrollview和listview衝突導致進頁面就不是在頂部的問題

解決方案1:ScrollView.post()

sv_container.post(  
    new Runnable() {  
            public void run() {   
                //sv_container.fullScroll(ScrollView.FOCUS_UP);   
                sv_container.scrollTo(0, 0) ;   
            }   
       });  
 

【注意】方法中開一個新執行緒是必要的。否則在資料更新導致換行時getMeasuredHeight方法並不是最新的高度。

在listview繪製好資料後,就可以使用該方法了,可以達到進頁面就在頂部的目的,但是能感覺頁面有明顯的跳動。

解決方案2:

sv_container.smoothScrollTo(0,0);  

在listview繪製好資料後使用,感覺不到頁面有跳動,推薦使用該法。