0
我創建了自定義視圖,並且想要處理在視圖中顯示的數據的滾動和縮放。Android - 比例和滾動檢測器
所以我試圖結合一個手勢和一個比例檢測器。 這是我的代碼,滾動檢測器似乎工作,但我不能讓秤檢測器作出反應。
有什麼建議嗎?
這裏是我的代碼:
public void initGestureDetectors() {
GestureDetector.SimpleOnGestureListener gestureListener = new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
scrollBy((int)distanceX, (int)distanceY);
return true;
}
};
gestureDetector = new GestureDetector(getContext(), gestureListener);
ScaleGestureDetector.SimpleOnScaleGestureListener scaleListener = new ScaleGestureDetector.SimpleOnScaleGestureListener() {
public boolean onScale (ScaleGestureDetector detector) {
// check scale is not too small
Toast.makeText(getContext(), "Scale x " + detector.getScaleFactor(), Toast.LENGTH_SHORT).show();
if(detector.getScaleFactor() > 0.5) {
return true;
}
return false;
}
};
scaleDetector = new ScaleGestureDetector(getContext(), scaleListener);
setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View view, MotionEvent motionEvent) {
gestureDetector.onTouchEvent(motionEvent);
return true;
}
});
}
public boolean onTouchEvent(MotionEvent event) {
if (event.getPointerCount() > 1) {
Toast.makeText(getContext(), "detected", Toast.LENGTH_SHORT).show();
return scaleDetector.onTouchEvent(event);
}
return gestureDetector.onTouchEvent(event);
}
而且,我該怎麼辦了「規模」運動在模擬器中,這可能嗎?