我尝试获取由 xamarin 开发的交叉平台应用程序的磁场数据。我是移动开发的初学者,尤其是Xamarin。所以我有你好单词代码:
public App ()
{
// The root page of your application
MainPage = new ContentPage {
Content = new StackLayout {
VerticalOptions = LayoutOptions.Center,
Children = {
new Label {
XAlign = TextAlignment.Center,
Text = "Welcome to Xamarin Forms!"
}
}
}
};
}
我想在第一页显示磁力计的 3 个坐标值。
设备运动插件是一个多平台插件,我也有这个代码,但我不知道如何在应用程序中显示这些值。
CrossDeviceMotion.Current.Start(MotionSensorType.Magnetometer);
CrossDeviceMotion.Current.SensorValueChanged += (s, a) =>
{
switch (a.SensorType)
{
case MotionSensorType.Magnetometer:
Debug.WriteLine("A: {0},{1},{2}", ((MotionVector)a.Value).X, ((MotionVector)a.Value).Y, ((MotionVector)a.Value).Z);
break;
}
};
为了使其正常工作,您需要设置标签的 x:Name
属性。我一直在使用加速度计,所以我的名字是 accelerometerLog
.
然后,您可以从代码中执行以下操作:
accelerometerLog.Text = String.Format(
"X:{0} Y:{1} Z:{2}",
((MotionVector)a.Value).X,
((MotionVector)a.Value).Y,
((MotionVector)a.Value).Z
);