,這很簡單---每個視圖都有一個scrollViewDidScroll方法。我正試圖在Android中找到相應的功能。Android:如何判斷一個視圖是否在iPhone中滾動
我的代碼有效,但它並沒有給我我想要的東西。我需要在視圖滾動的整個持續時間內執行代碼。所以,即使我使用OnGestureListener的onScroll方法,它只會在手指在屏幕上時觸發(它並不是真正命名的 - 它應該被稱爲「onSlide」或「onSwipe」,側重於手勢而不是UI動畫)。如果用戶彈動視圖並且在用戶擡起手指後仍然滾動片刻,它不會繼續觸發。
是否有一種方法在滾動的每一步都被調用?
public class Scroll extends Activity implements OnGestureListener {
public WebView webview;
public GestureDetector gestureScanner;
public int currentYPosition;
public int lastYPosition;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
webview = new WebView(this);
setContentView(webview);
webview.loadUrl("file:///android_asset/Scroll.html");
gestureScanner = new GestureDetector(this);
currentYPosition = 0;
lastYPosition = 0;
}
public boolean onTouchEvent(final MotionEvent me) {
return gestureScanner.onTouchEvent(me);
}
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
// I do stuff here.
return true;
}
謝謝....這些WebViews似乎完全不同於任何其他Android視圖。這是我在這個論壇上提出的第二個問題,它導致了:「這是有道理的,但WebView似乎是正常的Android約定中沒有記錄的例外。」非常令人沮喪。謹防WebViews! – Dave 2010-04-09 17:27:01