2016-11-29 49 views
0

我有一個scrollView,其中雖然我在scrollView結束時,單擊最後一個按鈕時,我需要顯示該按鈕下方的視圖。我正在通過將新增視圖的可見性從GONE更改爲可見來實現。它的工作,但點擊按鈕後,我無法看到新添加的視圖,即我需要向下滾動scrollView以顯示該視圖。點擊按鈕後,有沒有辦法將ScrollView滾動到新添加的視圖?也可以隱藏該視圖並在再次單擊該按鈕後滾動回正常狀態。ScrollView不滾動,以添加新視圖時結束android

在此先感謝!

+0

在此處添加您的xml代碼。以便我們可以嘗試解決這個問題。 – Ramz

+0

@Ramz我爲此使用了倒數計時器,它在我的回答中對我有用。 –

回答

0

作爲該我是添加在與擴大動畫加入結束,所以我使用倒數計時器爲它如下的觀點:

new CountDownTimer(500, 1) { 
     public void onTick(long millisUntilFinished) { 
      myScrollView.scrollTo(0, R.id.bottomView); 
     } 
     public void onFinish() { 
     } 
    }.start(); 

就是這樣。

1

這是一個幾乎完成同樣事情的替代方案。

而不是滾動到屏幕的底部,將焦點更改爲位於屏幕底部的視圖。

也就是說,替換:

scroll.scrollTo(0, scroll.getBottom()); 

有:

Footer.requestFocus(); 

確保指定的觀點,說 '頁腳' 可獲得焦點。

android:focusable="true" 
android:focusableInTouchMode="true" 

,或者如果上述不工作嘗試這種

scrollView.post(new Runnable() { 
@Override 
public void run() { 
    scrollView.fullScroll(ScrollView.FOCUS_DOWN); 
} 
}); 
+0

我試過這樣做,但沒有成功。 –