Xamarin.UITest:如何检索设备显示的坐标

Bra*_*ick 2 c# ui-testing xamarin xamarin.uitest

我正在使用Xamarin.UITest在C#中编写UITest.

如何在UITest中动态检索设备屏幕的坐标?

Bra*_*ick 5

在Xamarin.UITest中,当您调用时app.Query(),第一个查询结果将返回设备显示.然后,您可以使用Rect属性获取XY坐标.

下面是一个示例REPL输出,显示结果app.Query().First()和示例代码,将XY坐标分配给UITest中的变量.

REPL的样本输出

从REPL输出

示例代码

var windowQuery = app.Query().First();

var topLeftXCoordinate = windowQuery.Rect.X;
var topLeftYCoordinate = windowQuery.Rect.Y;

var topRightXCoordinate = windowQuery.Rect.X + windowQuery.Rect.Width;
var topRightYCoordinate = windowQuery.Rect.Y;

var bottomLeftXCoordinate = windowQuery.Rect.X;
var bottomLeftYCoordinate = windowQuery.Rect.Y + windowQuery.Rect.Height;

var bottomRightXCoordinate = windowQuery.Rect.X + windowQuery.Rect.Width;
var bottomRightYCoordinate = windowQuery.Rect.Y + windowQuery.Rect.Height;

var centerXCoordinate = windowQuery.Rect.CenterX;
var centerYCoordinate = windowQuery.Rect.CenterY;
Run Code Online (Sandbox Code Playgroud)