9

これが私のストーリーボードです

ここに画像の説明を入力

私は autolayout を使用していますが、サイズ クラスは使用していません。

iPhone 5s で実行したところ、正常に動作しました。 (縦方向と横方向の両方) ここに画像の説明を入力

しかし、iPhone 6 plus (ポートレート) で実行すると、正しく位置合わせされません。 ここに画像の説明を入力

iPhone 6 plus (横向き) ではさらに悪化します。 ここに画像の説明を入力

を使用してマージンを設定できることはわかっています-widgetMarginInsetsForProposedMarginInsets:が、その場合、すべてのデバイスのマージンをカスタマイズする必要があります。それは恐ろしいでしょう:(

では、サブビューをタイトルに合わせて痛みを軽減する方法はありますか?

4

4 に答える 4

5

手動で設定する必要があるようです。これを行うには、制約を作成し、それに IBOutlet を指定し、デバイス/方向に応じて定数を設定します。

参考までに、必要な余白を以下に示します。

  • 5S - 1 (2px)
  • 6 - 1 (2px)
  • 6 プラス ポートレート - 5 (15px)
  • 6 プラス横長 - 34 (102px)

縦長の iPhone 6 で 414 pt の拡張ビューのサイズから、必要なものを見つけることができます。

于 2014-10-07T18:32:22.917 に答える
0

ウィジェットの余白をカスタマイズする必要があります。

- (UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMarginInsets;

ドキュメント: https://developer.apple.com/library/ios/documentation/NotificationCenter/Reference/NCWidgetProviding_Protocol/index.html

于 2014-09-24T23:18:16.703 に答える