确定ImageView上的位置

时间:2017-11-18 15:06:12

标签: c# android xamarin bitmap

我正在开发一个移动应用程序(xamarin.android& c#)。情况显示具有一定宽度的图像,例如, 2380像素。我正在使用“ShowPress” - 使用,以便用户能够在图片上标记一个点。现在我需要图片上的位置。

该事件获取一个参数,该参数提供与屏幕相关的值RawX以及RawY。如何获得ImageView的大小?我需要它来确定原始位图的位置。

    public void OnShowPress(MotionEvent e)
    {
        var x = e.RawX;
        var y = e.RawY;

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

您可以阅读此文档:MotionEvent

位置e.RawX/e.RawY与屏幕相关:

  

返回此事件的原始原始X坐标。对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,然后根据包含的窗口和视图进行调整。

位置e.GetX / e.GetY与视图相关:

  

getX(int)表示第一个指针索引(可以是任意指针标识符)。

更好地理解:

  • RawX/RawY保证相对于设备屏幕返回绝对坐标

  • GetX()/GetY()时,应该返回相对于视图的坐标。

因此,您可以使用e.GetX()/e.GetY()来确定原始位图上的位置。