[英]Android: How to scroll ScrollView in top
我有兩個按鈕可以切換到下一個事件列表和上一個事件列表。
當我 go 到下一個\上一個事件時,滾動仍然在下面的某個地方。 但我需要“倒帶”它。
我正在努力:
scrollViewEventDetails.pageScroll(ScrollView.FOCUS_UP);
和:
scrollViewEventDetails.scrollTo(0, 0);
但它不起作用。 請幫忙!
你接下來應該寫:
scrollViewEventDetails.fullScroll(View.FOCUS_UP);//if you move at the end of the scroll
scrollViewEventDetails.pageScroll(View.FOCUS_UP);//if you move at the middle of the scroll
這對我不起作用:
scrollViewEventDetails.fullScroll(View.FOCUS_UP); //if you move at the end of the scroll
這對我有用:
scroll_view.smoothScrollTo(0,0);
scrollview.pageScroll(View.FOCUS_UP);
更加一致並且為我工作。 :)
這些電話的時機至關重要。 getViewTreeObserver().addOnGlobalLayoutListener 對我不起作用,但在我的活動中使用 onWindowFocusChanged 回調可以:
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
mScrollView.fullScroll(View.FOCUS_UP);
}
}
我知道這是一篇舊文章,但代碼在某些地方有效而不在其他地方有效是有原因的。 如果在錯誤的地方調用它會被主線程中斷,特別是如果 ScrollView 必須滾動很長的距離。 因此,將您的電話放在自己的線程中。 固定的。
(new Thread(new Runnable(){
public void run(){
mScrollView.fullScroll(View.FOCUS_UP);
}
})).start();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.