绘制线条屏幕和设备无关

时间:2016-11-14 16:54:02

标签: android ios xamarin

我正在使用Xamarin为Android和iOS设计应用程序;但这与问题本身无关。

该应用程序的一个功能是让用户在屏幕上绘制一种草图。

让我们以一条简单的线为例:使用手指,用户可以在他们移动手指的位置画一条线。为此,我们使用适用于iOS和iOS的特定设备方法。机器人:

的iOS

public override void TouchesMoved(NSSet touches, UIEvent evt)
{
  UITouch touch = (UITouch)touches.AnyObject;
  CGPoint currentPointiOS = touch.LocationInView(MainView);
}

的Android

public bool OnTouch(View v, MotionEvent e)
{
 Point currentPointAndroid = new Point((int) e.GetX(), (int) e.GetY());
}

currentPointIOS以磅为单位定义,currentPointAndroid以像素定义。

一旦绘制了一条线(一组点,而不是iOS点,但带有x和y坐标的几何点),我们将其发送到服务器,然后可以从Android或iOS设备查看。

有没有办法以绝对方式存储有关线路的数据,以便可以在具有不同分辨率的其他设备上正确显示?有没有办法将Android像素转换为iOS点(如果这可能有用)?

非常感谢您的帮助。

0 个答案:

没有答案