Accelerometer.Shaken Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит, когда акселерометр обнаруживает, что компьютер был встряхнул.
// Register
event_token Shaken(TypedEventHandler<Accelerometer, AccelerometerShakenEventArgs const&> const& handler) const;
// Revoke with event_token
void Shaken(event_token const* cookie) const;
// Revoke with event_revoker
Accelerometer::Shaken_revoker Shaken(auto_revoke_t, TypedEventHandler<Accelerometer, AccelerometerShakenEventArgs const&> const& handler) const;
public event TypedEventHandler<Accelerometer,AccelerometerShakenEventArgs> Shaken;
function onShaken(eventArgs) { /* Your code */ }
accelerometer.addEventListener("shaken", onShaken);
accelerometer.removeEventListener("shaken", onShaken);
- or -
accelerometer.onshaken = onShaken;
Public Custom Event Shaken As TypedEventHandler(Of Accelerometer, AccelerometerShakenEventArgs)
Тип события
Примеры
В следующем примере показано, как приложение UWP, созданное с помощью C# и XAML, регистрирует обработчик событий Shaken .
private void ScenarioEnable(object sender, RoutedEventArgs e)
{
if (_accelerometer != null)
{
Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
_accelerometer.Shaken += new TypedEventHandler<Accelerometer, AccelerometerShakenEventArgs>(Shaken);
ScenarioEnableButton.IsEnabled = false;
ScenarioDisableButton.IsEnabled = true;
}
else
{
rootPage.NotifyUser("No accelerometer found", NotifyType.StatusMessage);
}
}
В следующем примере показан обработчик событий Shaken.
async private void Shaken(object sender, AccelerometerShakenEventArgs e)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
_shakeCount++;
ScenarioOutputText.Text = _shakeCount.ToString();
});
}
Комментарии
Используйте это событие для получения уведомления о том, что устройство, содержащее акселерометр, встряхнуло. Приложению не требуется задавать интервал отчета перед регистрацией для событий Shaken.
Поддержка события Shaken зависит от поддержки оборудования и драйверов. На практике очень немногие акселерометры поддерживают событие Shaken. Если акселерометр не поддерживает событие Shaken и вы добавляете обработчик событий для события Shaken, ошибка не возникает, но код в обработчике событий не выполняется.