Xamarin.Essentials: Přichytát
Třída Předtuchometr umožňuje monitorovat senzor vichometru zařízení, který indikuje orientaci zařízení vzhledem k magnetickému poli Země.
Začínáme
Pokud chcete začít používat toto rozhraní API, přečtěte si příručku Začínáme pro a ujistěte se, že je knihovna správně nainstalovaná a nastavená ve vašich projektech.
Použití Funkce Předtuchometr
Do třídy Xamarin.Essentials přidejte odkaz na :
using Xamarin.Essentials;
Funkce FunkciOnometer funguje tak, že volá metody a , aby Start naslouchala Stop změnám v krátkometru. Všechny změny se posílají zpět prostřednictvím ReadingChanged události. Tady je ukázka použití:
public class MagnetometerTest
{
// Set speed delay for monitoring changes.
SensorSpeed speed = SensorSpeed.UI;
public MagnetometerTest()
{
// Register for reading changes.
Magnetometer.ReadingChanged += Magnetometer_ReadingChanged;
}
void Magnetometer_ReadingChanged(object sender, MagnetometerChangedEventArgs e)
{
var data = e.Reading;
// Process MagneticField X, Y, and Z
Console.WriteLine($"Reading: X: {data.MagneticField.X}, Y: {data.MagneticField.Y}, Z: {data.MagneticField.Z}");
}
public void ToggleMagnetometer()
{
try
{
if (Magnetometer.IsMonitoring)
Magnetometer.Stop();
else
Magnetometer.Start(speed);
}
catch (FeatureNotSupportedException fnsEx)
{
// Feature not supported on device
}
catch (Exception ex)
{
// Other error has occurred.
}
}
}
Všechna data se vrátí v μT (microteslas).
Rychlost snímače
- Nejrychlejší – získejte data snímačů co nejrychleji (nezaručuje vrácení ve vlákně uživatelského rozhraní).
- Game – míra vhodná pro hry (nezaručuje se vrácení ve vlákně uživatelského rozhraní).
- Výchozí – výchozí rychlost vhodná pro změny orientace obrazovky.
- Uživatelské rozhraní – rychlost vhodná pro obecné uživatelské rozhraní.
Pokud není zaručeno spuštění obslužné rutiny události ve vlákně uživatelského rozhraní a obslužná rutina události potřebuje přístup k prvkům uživatelského rozhraní, použijte metodu ke spuštění tohoto kódu ve MainThread.BeginInvokeOnMainThread vlákně uživatelského rozhraní.