2

TabBarViewController をプッシュする ViewController があります。その TabBar View Controller 内には、4 つのタブがあります。これらのタブ バーのうち 2 つが UITableViewControllers で、残りの 2 つが ViewControllers です。最初のタブはテーブル ビュー コントローラーで、正常に動作しています。つまり、ナビゲーション バーに隠れていません。別の TableViewController である 3 番目のタブは、ナビゲーション バーによって部分的に覆われています。最初のセクションと最初のセルは、ナビゲーション バーの下に隠されています。誰かが過去にこの問題を抱えていましたか、または誰かがこれに対する解決策を知っていますか? フレームサイズを手動でサイズ変更するなど、いくつか試しました

self.tableView.frame = CGRectMake(10,10,self.view.bounds.size.width -20, self.view.bounds.size.height-20);

それはうまくいかなかったようです。AutoLayout も試しましたが、うまくいきませんでした。他に何をすべきかわかりません。これに取り組む方法についての提案やアイデアは誰にでもあります。

編集: を試しましたedgesForExtendedLayoutが、ナビゲーション バーの色が濃くなっています。ローディングバーのようなナビゲーションバーの色の変化をアニメーション化します。

注: これは ios7 でのみ発生しています。iOS 6.1でシミュレートしたところ、ナビゲーションバーがテーブルビューコントローラーをまったくカバーしていません。これは私にとって奇妙です。誰にも提案はありますか?

編集 #2: これは iOS 7 > 問題であることに気づき、次のことを行いましたが、ナビゲーション バーの色が暗い色に変わりました。

if([[[[UIDevice currentDevice] systemVersion] componentsSeparatedByString:@"."][0] intValue] >= 7)
    {
        if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
        {
            self.edgesForExtendedLayout = UIRectEdgeNone;
            self.extendedLayoutIncludesOpaqueBars = YES;
            self.automaticallyAdjustsScrollViewInsets = NO;
        }
    }
4

2 に答える 2