在ImageView touch上获取X / Y坐标

问题描述 投票:1回答:2

所以,我需要在ImageView上获得触摸的坐标。

我已经成功尝试在OnTouchListener事件中获取坐标。但这不是我真正需要的。

问题是屏幕的分辨率远低于ImageView中图片的分辨率。

如何获得图像的实际坐标(可能是某些像素)?

java android mobile
2个回答
2
投票

Android: How do I get the x y coordinates within an image / ImageView?

imageView.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View view) {
            int[] values = new int[2]; 
            view.getLocationOnScreen(values);
            Log.d("X & Y",values[0]+" "+values[1]);
        }
    });

像这样的东西?


2
投票

为此目的有getLocationOnScreen()和getLocationInWindow()方法。

imageView.setOnTouchListener(new OnTouchListener() {
            @Override public boolean onTouch(View view, MotionEvent motionEvent) {
                int[] locations = new int[2];
                view.getLocationOnScreen(locations);
                //view.getLocationInWindow(locations);
                return false;
            }
        });
© www.soinside.com 2019 - 2024. All rights reserved.