2013-11-20 103 views
3

好moorning:實施GestureDetector一個ImageView的

我有一個ImageView的在我的活動,我設置好的的OntOuchListner()在我的ImageView,這意味着我實現了這個接口爲我的ImageView的是這樣的:

public class mapActivity extends Activity 
{ 

    //-------------------------------------- 
    private ImageView imageView; 

    /** 
    * Called when the activity is first created. 
    */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 


     setContentView(R.layout.main); 
     imageView = (ImageView) this.findViewById(R.id.imageView1); 

     AddImageViewEvents(); 
    } 
private void AddImageViewEvents() { 


     imageView.setOnTouchListener(new ImageView.OnTouchListener() { 
      public boolean onTouch(View v, MotionEvent event) { 
       int action, pointerCount, i; 
       action = event.getAction(); 
       pointerCount = event.getPointerCount(); 

        switch (action) { 
         case MotionEvent.ACTION_DOWN: 
          //code here 
          break; 

         case MotionEvent.ACTION_MOVE: 
          //code here 
          break; 

         default: 
          break; 
        } 

       return true; 
      } 

    } 

我想通過相同的方式設置爲我的ImageView的GestureDetector,我不知道這是否可能。

謝謝。

回答

3
public class TestImageView extends ImageView implements OnGestureListener{ 
    public TestImageView(Context context) { 
     super(context); 
     // TODO Auto-generated constructor stub 

     setOnTouchListener(new View.OnTouchListener() { 

      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       // TODO Auto-ge`enter code here`nerated method stub 
       return false; 
      } 
     }); 
    } 

    @Override 
    public boolean onDown(MotionEvent e) { 
     // TODO Auto-generated method stub 
     return false; 
    } 

    @Override 
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, 
      float velocityY) { 
     // TODO Auto-generated method stub 
     return false; 
    } 

    @Override 
    public void onLongPress(MotionEvent e) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, 
      float distanceY) { 
     // TODO Auto-generated method stub 
     return false; 
    } 

    @Override 
    public void onShowPress(MotionEvent e) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public boolean onSingleTapUp(MotionEvent e) { 
     // TODO Auto-generated method stub 
     return false; 
    } 
} 

現在你可以在你的xml中使用TestImageView而不是ImageView。

1

是的,你可以做到這一點。讓一個類擴展ImageView並實現OnGestureListener。

+0

不,我想實現OngestlureListner和OnTouchListner。 – RiadSaadi