Xamarin'de watchOS Ekran Boyutları ile çalışma
Apple Watch iki ekran boyutunda kullanılabilir:
38mm
- 136 x 170 mantıksal piksel (272 x 340 fiziksel piksel)
42mm
- 156 x 195 mantıksal piksel (312 x 390 fiziksel piksel).
Uygulamalarınızı tasarlarken ve test ederken ekran boyutunu dikkate almanız gerekir.
watchOS Arabirimi Tasarım Aracı
Varsayılan olarak Mac için Visual Studio Tasarım Aracı, Herhangi bir Apple Watch'ta saat arabirimi denetleyicileri görüntüler.
Görsel taslaklarınızı kullanılabilir ekran boyutlarından birinde düzenlemek ve önizlemek için boyut menüsünü kullanın: 38mm veya 42mm:
Daha büyük ekran boyutu bazen küçük ekranda kesilecek/gizlenecek içeriği işler. Her iki boyutta da test etmeye özen gösterin.
Arabirim Tasarımı
Uygulamanız boyuttan bağımsız olarak ekranda aynı içeriği görüntülemeli ve öğeleri uygun şekilde genişletmeli veya sözleşme yapmalıdır. Mac için Visual Studio Tasarım Aracı, Öznitelik Denetçisi'nde, sabit boyutlara tercihen İçeriği Sığdırmak için Kapsayıcıya Göre veya Boyut'u kullanmalısınız.
Saat ekranı siyah bir çerçeveyle çevrelendiğinden, arabiriminizin çevresine doldurma sağlanması önerilmez. Öğelerin ekranın kenarına dayanmasına izin verin ve çerçevenin uygulamanın çevresinde doğal bir kenarlık oluşturmasına izin verin.
watchOS Simülatörü
Simülatörde test ederken Donanım > Cihazı menüsünü kullanarak iki ekran boyutu arasında kolayca geçiş yapabilirsiniz.
Görüntü Kaynakları
Tek bir varlık farklı boyutlarda iyi görünmüyorsa birden çok görüntü varlığı kullanmanız gerekir. Görüntü varlığı katalogları, her boyut için ayrı bit eşlemlerin belirtilmesine olanak sağlar:
// specify the asset name, the correct size will automatically be loaded
staticImage.SetImage(UIImage.FromBundle("Walkway"));
Alternatif olarak, ekran boyutunu belirlemek ve farklı görüntüleri tamamen yüklemek için kodu kullanın:
bool large = WKInterfaceDevice.CurrentDevice.ScreenBounds.Size.Width > 136.0;
// Load image depending on screen size
using (var image = UIImage.FromBundle (large ? "42mm-Walkway" : "38mm-Walkway"))
{
myImage.SetImage (image);
}
Görüntü denetimini kullanma hakkında daha fazla bilgi edinin.