2

一部のコントロール レイアウトの計算では、通知領域の高さを知る必要があります。確かに、WP 7/8/8.1 のポートレート モードで 32 ピクセルに相当することはわかっていますが、OS の将来のリリースのためにこの値をハード コードすることはお勧めできません。Silverlight アプリでこの値をオンザフライで取得するにはどうすればよいですか?

4

3 に答える 3

1

コードで通知領域の高さを取得できません。

その基準はPre-DefinedSystem Tray電話画面の上部にある小さなバーです。ポートレートモードで表示されます。アプリケーションが縦モードに設定されている場合、heightシステム トレイの幅は になり32 pixel、アプリケーションが縦モードに設定されている場合Landscape mode、システム トレイの幅は になり72 pixelます。これは、Windows Phone 7 の UI デザイン ガイドラインおよびインタラクション ガイドラインに従っています。

アクセス可能なものについての詳細は、こちらから入手できます

于 2014-06-05T10:43:01.500 に答える
1
double contentScaleFactor = (double)Application.Current.Host.Content.ScaleFactor / 100;
double systemTrayHeight = 32 / contentScaleFactor;

または、横向きの場合は 72 です。Lumia 1520 のようなスマートフォンでは、アプリのコンテンツが拡大されるため、調整する必要があります。

于 2014-08-07T16:40:54.180 に答える