Xamarin での watchOS 画面サイズの操作
Apple Watch は、次の 2 つの画面サイズで利用できます:
38mm
- 136 x 170 論理的なピクセル (272 x 340 物理的なピクセル)
42mm
- 156 x 195 論理的なピクセル (312 x 390 物理的なピクセル)。
アプリを設計およびテストするときは、画面サイズを考慮する必要があります。
watchOS インターフェイス デザイナー
既定では、Visual Studio for Mac Designer では、ウォッチ インターフェイス コントローラーが 任意の Apple Watch に表示されます。
サイズ メニューを使用して、使用可能な画面サイズ (38mm または 42mm) でストーリーボードを編集してプレビューします:
画面サイズが大きいほうに、小さい画面で切り詰められたり非表示になったりするコンテンツがレンダリングされることがあります。 必ず両方のサイズでテストしてください。
インターフェイスのデザイン
アプリは、サイズに関係なく画面に同じコンテンツを表示し、必要に応じて要素を展開または縮小する必要があります。 Visual Studio for Mac Designer の [属性インスペクター] で、固定サイズに優先してコンテナーに対する相対またはコンテンツに合わせてサイズを使用する必要があります。
ウォッチ画面は黒いベゼルで囲まれているため、インターフェイスの周囲にパディングを提供することはお勧めしません。 要素を画面の端に置き、ベゼルがアプリの周囲に自然な境界線を形成できるようにします。
watchOS シミュレーター
シミュレーターでテストするときは、[ハードウェア] > [デバイス] メニューを使用して、2 つの画面サイズを簡単に切り替えることができます。
イメージ リソース
1 つのアセットのサイズが異なる場合は、複数のイメージ アセットを使用する必要があります。 イメージ アセット カタログを使用すると、サイズごとに個別のビットマップを指定できます:
// specify the asset name, the correct size will automatically be loaded
staticImage.SetImage(UIImage.FromBundle("Walkway"));
または、コードを使用して画面サイズを決定し、さまざまな画像を完全に読み込みます:
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);
}
イメージ コントロールの使用についての詳細情報を参照してください。