ポップオーバー内にナビゲーション コントローラーを含めました。ビューには、部分的にカバーしたい画像が含まれています。iOS6 ではナビゲーション バーの後ろにあり、ios7 では正反対です。スクリーンショットを添付します。誰かが理由を知っていますか?
質問する
1853 次
3 に答える
1
自動レイアウト制約を使用します: http://www.raywenderlich.com/50317/beginning-auto-layout-tutorial-in-ios-7-part-1
またはこれを試してください(エレガントな解決策はありません):
NSString *ver = [[UIDevice currentDevice] systemVersion];
float ver_float = [ver floatValue];
if (ver_float >= 7.0f)
{
CGRect frame = self.myView.frame;
frame.origin.y = self.navigationBar.frame.size.height;
[self.myView setFrame:frame]
}
于 2013-10-31T09:35:21.847 に答える
0
iOS 7 では、レイアウトは既定でコンテナーの端まで拡張されます。これは、edgesForExtendedLayout
View Controller プロパティによるコントローラーです。上部をナビゲーション バーに合わせてレイアウトを開始する場合は、 を設定して無効にする必要がありますself.edgesForExtendedLayout
。
例えば:
- (id)init
{
if ((self = [super init])) {
// layout with top of view starting at bottom of navigation bar
self.edgesForExtendedLayout = UIRectEdgeNone;
// continue with init
}
}
于 2013-12-13T01:41:09.300 に答える