2015-06-01 82 views
0

我在onDispatchKeyEvent中以編程方式滾動TextView。當我滾動很多時,我可以將文本移到邊界或邊界下方,以便只顯示一半。Android:防止TextView通過邊界以編程方式滾動

@Override 
public boolean dispatchKeyEvent(KeyEvent event) { 
if (event.getKeyCode() == KeyEvent.KEYCODE_MOVE_HOME && event.getAction() == KeyEvent.ACTION_DOWN) { 

outputTextView.scrollBy(0, +50); 

} 
} 

我該如何預防?

回答

0

你可以試着記住您當前的位置,並檢查是否可以sroll更多

curr_pos += 50 
if(curr_pos < outputTextView.getBottom()){ 
    outputTextView.scrollBy(0, +50); 
}else{ 
    curr_pos -=50 
} 

或嘗試重寫.onScrollChanged(int, int, int, int)這是由.scrollBy(int, int)調用。

相關問題