Xamarin'de watchOS Menü Denetimi (Dokunmaya Zorla)

Watch Kit, bir izleme uygulaması ekranında uygulandığında menüyü tetikleyen bir Dokunmaya Zorla hareketi sağlar.

Apple Watch showing a menu

Dokunmaya Zorla yanıt verme

Menu Bir arabirim denetleyicisi için uygulandıysa, kullanıcı Dokunmaya Zorla işlemi gerçekleştirdiğinde menü görüntülenir. Hiçbir menü uygulanmamışsa, ekran kısaca animasyonludur ve başka bir eylem gerçekleşmez.

Dokunmaları Zorla, ekrandaki belirli bir öğeyle ilişkilendirilmemiştir; Bir arabirim denetleyicisine yalnızca bir menü eklenebilir ve Dokunmaya Zorla düğmesinin ekranda nerede olduğuna bakılmaksızın görünür.

Bir ile dört arasında menü seçeneği sunulabilir.

Menü Ekleme

Tasarım Menu zamanında görsel taslakta öğesine InterfaceController bir eklenmelidir. Menü denetimi arabirim denetleyicisine sürüklendiğinde görsel taslak önizlemesinde görsel bir gösterge yoktur, ancak Menü Belge Ana Hattı panelinde görünür:

Editing a menu at design time

Menü denetimine en fazla dört menü öğesi eklenebilir. Özellikler panelinde yapılandırılabilirler. Aşağıdaki öznitelikler ayarlanabilir:

  • Başlık ve
  • Özel Görüntü veya
  • Sistem görüntüsü: Kabul Et, Ekle, Engelle, Reddet, Bilgi, Belki, Daha Fazla, Sesi Kapat, Duraklat, Yürüt, Yinele, Sürdür, Paylaş, Karıştır, Konuşmacı, Çöp Kutusu.

Özellikler panelinin Olaylar bölümünü seçip eylem yönteminin adını yazarak bir Action oluşturun. Kodda aşağıdaki gibi arabirim denetleyicisi sınıfında uygulanabilen kısmi bir yöntem oluşturulur:

partial void MenuItemTapped ()
{
    Console.WriteLine ("A menu item was tapped.");
}

Özel Görüntüler

iOS'taki sekme görüntülerine benzer şekilde, menü öğesi görüntüleri arka planı gösteren alfa kanalına sahip opak bir desen gerektirir.

En iyi performans için menü için kullanılan görüntüleri izleme uygulaması projesine (izleme uygulaması uzantısı projesine değil) eklemeniz gerekir.

Menü Öğelerini Değiştirme

Çalışma Zamanında Ekleme

Bir arabirim denetleyicisine çalışma zamanında eklenmesine neden Menu olamazsınız, ancak s koleksiyonu MenuItemprogram aracılığıyla değiştirilebilir. AddMenuItem Yöntemini gösterildiği gibi kullanın:

AddMenuItem (WKMenuItemIcon.Accept, "Yes", new ObjCRuntime.Selector ("tapped"));

Xamarin.iOS Watch Kit API'si şu anda yöntemi için AdMenuItem aşağıdaki gibi bildirilmesi gereken bir selector gerektirir:

[Export("tapped")]
void MenuItemTapped ()
{
    Console.WriteLine ("The dynamically added 'Yes' menu item was tapped.");
}

Çalışma Zamanında Kaldırılıyor

ClearAllMenuItems Program aracılığıyla eklenen tüm menü öğelerini kaldırmak için yöntemi çağrılabilir.

Görsel taslakta yapılandırılan menü öğeleri temizlenemez.