Windows phone 8.1 停止加速度计

Windows phone 8.1 stop accelerometer

我正在为 windows phone 8.1 开发应用程序。

我有一个 if 语句:

if(txtX.Text=="  .24"){

 accelerometer.Stop();
 MainPage.Score++;
 this.frame.Navigate(typeof(Final_Score));
 }

解释一下这个语句的用法。我有它所以 X 轴的值放在 txtX.Text 内。然后,当加速度计的 X 轴等于 0.24 时,它会递增 1 以评分并导航到另一个页面。但是加速度计并没有停止,而是在下一页上传送到 运行。当我使用语句 accelerometer.Stop(); 时,无法识别并声明

'Windows.Devices.Sensors.Accelerometer'does not contain a definition for 'Stop' and no extension 'Stop' accepting a first arguement of type'Windows.Devices.Sensors.Accelerometer' could be found(are you missing a using directive or an assembly reference?)

任何人都可以帮助或提供在达到值 0.24 后停止我的加速度计的功能。

谢谢。

您正在使用的 class 是 Windows.Devices.Sensors.Accelerometer, this does not contain a Stop, you are probably looking at the Microsoft.Devices.Sensors.Accelerometer 文档(其中包含 Stop 方法)

而不是 Stop 只需取消注册活动

if(txtX.Text=="  .24"){
    accelerometer.ReadingChanged -= YourUpdateFunction;
    MainPage.Score++;
    this.frame.Navigate(typeof(Final_Score));
}

顺便说一句,离开时取消注册所有事件通常是个好主意,这样您就不会在返回时重复注册事件。