2012-04-02 55 views
0

我有一个android代码,当用户触摸屏幕时开始振动一段随机的时间。现在我想改变一下。我想让用户触摸一个预定义的位置,例如在屏幕中间。我应该怎么做,只有在一些特殊的坐标触摸生效?Android touch在预定义的位置

回答

1

可以使用onTouchListener 。监听器得到一个MotionEvent,从中可以得到次坐标和检查位置:

something.setOnTouchListener(new OnTouchListener() { 
    public boolean onTouch(View v, MotionEvent event) { 

     // get coordinates from touch event 
     int x = (int) event.getX(); 
     int y = (int) event.getY(); 

     // check if the coordinates are in a specific area 

     return true; 
    } 
}); 

要获得的宽度和高度,你可以使用下面的代码:

Display d = getWindowManager().getDefaultDisplay(); 
width = d.getWidth(); 
height = d.getHeight(); 
+0

但我应该怎么检查坐标在屏幕中间? – androidGirl 2012-04-02 11:49:17

0
onTouch(View v, MotionEvent event) 

onTouch给你一个MotionEvent,有了这个,你可以简单地做

event.getX(); 
event.getY(); 

用于获取坐标,并用它做什么(或不:))