Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Xamarin.Essentials Rect, Size ve Point gibi platform türleriyle çalışmak zorundayken çeşitli platform uzantısı yöntemleri sağlar. Bu, iOS, Android ve UWP'ye özgü türleri için bu türlerin sürümü arasında System dönüştürme yapabileceğiniz anlamına gelir.
Kullanmaya başlayın
Bu API'yi kullanmaya başlamak için kitaplığın projelerinizde düzgün yüklendiğinden ve ayarlandığından emin olmak için Xamarin.Essentials kullanmaya başlama kılavuzunu okuyun.
Platform Uzantılarını Kullanma
Sınıfınızda için Xamarin.Essentials bir başvuru ekleyin:
using Xamarin.Essentials;
Tüm platform uzantıları yalnızca iOS, Android veya UWP projesinden çağrılabilir.
Android Uzantıları
Bu uzantılara yalnızca bir Android projesinden erişilebilir.
Uygulama Bağlamı ve Etkinliği
Sınıftaki Platform platform uzantılarını kullanarak geçerli Context uygulamaya veya Activity çalışan uygulamaya erişebilirsiniz.
var context = Platform.AppContext;
// Current Activity or null if not initialized or not started.
var activity = Platform.CurrentActivity;
gerekli olduğu, ancak uygulamanın tam olarak başlatılmadığı WaitForActivityAsync bir durum Activity varsa yöntemi kullanılmalıdır.
var activity = await Platform.WaitForActivityAsync();
Etkinlik Yaşam Döngüsü
Geçerli Etkinliği almaya ek olarak yaşam döngüsü olaylarına da kaydolabilirsiniz.
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
Xamarin.Essentials.Platform.Init(this, bundle);
Xamarin.Essentials.Platform.ActivityStateChanged += Platform_ActivityStateChanged;
}
protected override void OnDestroy()
{
base.OnDestroy();
Xamarin.Essentials.Platform.ActivityStateChanged -= Platform_ActivityStateChanged;
}
void Platform_ActivityStateChanged(object sender, Xamarin.Essentials.ActivityStateChangedEventArgs e) =>
Toast.MakeText(this, e.State.ToString(), ToastLength.Short).Show();
Etkinlik durumları şunlardır:
- Oluşturulan
- Sürdürülüyor
- Duraklatıldı
- Yok
- SaveInstanceState
- Başlarken
- Durduruldu
Daha fazla bilgi edinmek için Etkinlik Yaşam Döngüsü belgelerini okuyun.
iOS Uzantıları
Bu uzantılara yalnızca bir iOS projesinden erişilebilir.
Geçerli UIViewController
Şu anda görünür UIViewControllerolan :'e erişim elde edin:
var vc = Platform.GetCurrentUIViewController();
Bu yöntem, algılanamıyorsa UIViewControllerdöndürürnull.
Platformlar arası Uzantılar
Bu uzantılar her platformda bulunur.
Nokta
var system = new System.Drawing.Point(x, y);
// Convert to CoreGraphics.CGPoint, Android.Graphics.Point, and Windows.Foundation.Point
var platform = system.ToPlatformPoint();
// Back to System.Drawing.Point
var system2 = platform.ToSystemPoint();
Size
var system = new System.Drawing.Size(width, height);
// Convert to CoreGraphics.CGSize, Android.Util.Size, and Windows.Foundation.Size
var platform = system.ToPlatformSize();
// Back to System.Drawing.Size
var system2 = platform.ToSystemSize();
Dikdörtgen
var system = new System.Drawing.Rectangle(x, y, width, height);
// Convert to CoreGraphics.CGRect, Android.Graphics.Rect, and Windows.Foundation.Rect
var platform = system.ToPlatformRectangle();
// Back to System.Drawing.Rectangle
var system2 = platform.ToSystemRectangle();