如何在android中获取指针/光标位置

时间:2011-02-26 12:31:11

标签: android pointers location

在Android中,当我点击屏幕上的任意位置时,我想获取/返回光标位置(纬度和经度)。

2 个答案:

答案 0 :(得分:4)

我不知道你想获得什么纬度和经度,但我确信你可以在用户触摸屏幕时获得坐标X and Y的位置。

OnTouchListener中实施Activity,并使用Listener方法为您的视图设置setOnTouchListener()

现在,您可以覆盖onTouch()。{/ p>中的Activity方法

@Override
public boolean onTouch(View view, MotionEvent event) {
    int x = (int) event.getX();       
    int y = (int) event.getY();
    return false;
}

请参阅我为您编写了一个示例代码段:

    public class OnTouchDemo extends Activity implements OnTouchListener {

    private TextView tView;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        tView = (TextView) findViewById(R.id.txtView1);
        tView.setOnTouchListener(this);
    }

    @Override
    public boolean onTouch(View view, MotionEvent event) {
        int x = (int) event.getX();
        int y = (int) event.getY();

        Log.v("OnTouchDemo", "X==" + String.valueOf(x) + " Y==" + String.valueOf(y));

        return false;
    }
}

答案 1 :(得分:2)

对于MapView上的位置x,y,

MapView    map    = (MapView) findViewById(R.id.youmapview);
Projection proj   = map.getProjection();
GeoPoint   latlon = proj.fromPixels(x, y);