Как использовать onScroll for View в Android
Я хочу использовать onScroll
метод GestureDetector.SimpleOnGestureListener
,
Пока у меня есть этот код:
public class TouchView extends View {
private Drawable image;
private float scaleFactor = 1.0f;
private ScaleGestureDetector scaleGestureDetector;
private GestureDetector simpleOnGestureListener;
private FrameLayout root;
public TouchView(Context context) {
super(context);
image = context.getResources().getDrawable(R.drawable.wifi);
setFocusable(true);
image.setBounds(0, 0, image.getIntrinsicWidth(), image.getIntrinsicHeight());
scaleGestureDetector = new ScaleGestureDetector(context, new ScaleListener());
simpleOnGestureListener = new GestureDetector(context,new MyGestureListener());
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.save();
canvas.scale(scaleFactor, scaleFactor);
image.draw(canvas);
canvas.restore();
}
@Override
public boolean onTouchEvent(MotionEvent event) {
scaleGestureDetector.onTouchEvent(event);
simpleOnGestureListener.onTouchEvent(event);
invalidate();
return true;
}
private class MyGestureListener extends GestureDetector.SimpleOnGestureListener {
private static final String DEBUG_TAG = "Gestures";
@Override
public boolean onDown(MotionEvent event) {
Log.d(DEBUG_TAG,"onDown: " + event.toString());
return true;
}
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2,float distanceX, float distanceY){
return true;
}
}
Я хочу сделать View прокручиваемым / перетаскиваемым. Так что, если у меня есть два изображения нарисованы в View
и прокрутите, оба рисунка должны быть прокручены.
Надеюсь, понятно, что я хочу сделать!
С уважением!
1 ответ
Просто сделайте макет верхнего уровня ScrollView:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
.......
Your code
.......
</ScrollView>