2010-06-25 87 views
0

如何将触摸功能添加到简单的位图使位图监听触摸事件

我试图创建一个包装类为
其实现OnGestureListener
但没有奏效。

我想避免扩展View类来实现这一点。

谢谢!

回答

1

A Bitmap本身只是一个图像的表示...因此,为了显示它,你将不得不把它画在某个地方(实际上你总是在View上画一个View)。然后,由于所有用户界面小部件都对其进行扩展,因此无法避免使用View类。

总之,如果您想简单地将触摸监听器设置为单个Bitmap,则可以将其绘制在ImageView上并设置适当的监听器。另一方面,如果您在某处绘制了一组位图(例如,在SurfaceView上),则应该通过坐标定位位图(在这种情况下,将接收事件的View将为SurfaceView)。

1

您是否已将OnGestureListener实现连接到GestureDetector? GestureDetector分析MotionEvent,并根据找到的移动类型在侦听器上调用适当的回调。

public class MyActivity extends Activity { 
    private GestureDetector detector; 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     ... 
     detector = new GestureDetector(new MyGestureListener()); 
     ... 
    } 

    @Override 
    public boolean onTouchEvent(MotionEvent event) { 
     return detector.onTouchEvent(event); 
    } 
}