IOS-FDFullscreenPopGestureの使用

1971 ワード

まず大神様のブログを貼って敬意を表しますhttp://blog.sunnyxx.com/2015/06/07/fullscreen-pop-gesture/
これは本当にすごい倉庫だと言わざるを得ません.まず、これはグローバルに機能するライブラリであり、デフォルトの操作があります.あなたが導入すれば役に立つという意味です.
デフォルトの役割は、フルスクリーンの戻りジェスチャーです.
本当のことを言うと、泥棒は使いやすくて、冬に2本の手を出したくないのにスクリーンが大きい同級生に対して、本当にインタラクティブな絶対的な勝利です.そしてこの実現はまるで大神が言ったような滑らかさで形容できる.縁がすばらしい
ナビゲーションバーの変更
A push Bで紹介する
ナビゲーションバーの表示や非表示を制御するには、AppleはナビゲーションバーのAPIの設計に不満を抱いている.ああ、UINAvigationControllerとUIDIewControllerはいつも2つの異なるコントローラで、彼らの関係は実際には誰が誰をコントロールするかに達していません.
需要がApush後にBを隠す必要がある場合は、設定時に一般的に
  • 1、
  • - (void)viewWillAppear:(BOOL)animated {
        [super viewWillAppear:animated];
        [self.navigationController setNavigationBarHidden:YES animated:YES];
    }
    
    - (void)viewWillDisappear:(BOOL)animated {
        [super viewWillDisappear:animated];
        [self.navigationController setNavigationBarHidden:NO animated:YES];
    }
    
  • または2、
  • //     UINavigationControllerDelegate
    //        
    - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
        //               
        BOOL isShowHomePage = [viewController isKindOfClass:[self class]];
        [self.navigationController setNavigationBarHidden:isShowHomePage animated:YES];
    }
    

    しかし、気が狂ったボスに出会ったら、AもBもいらないが、Pushをしなければならない.
    また、上記のように、ジェスチャーで返したりpopで返したりすると、Aインタフェースはview WillAppearで実行されます.スライド中にAインタフェースナビゲーションバーの存在を見ることができます.これは強迫症にとって全く我慢できないので、FDFullscreenPopGestureは私たちの問題を完全に解決しました.重要なのはコードが非常に簡潔で、一言です.必要なナビゲーションバーを非表示にするインタフェースに
    - (void)viewDidLoad
        [super viewDidLoad];
        self.navigationController.fd_prefersNavigationBarHidden = YES;
    }
    

    あるいはリロードが好きな書き方でもいいです.
    - (BOOL)fd_prefersNavigationBarHidden {
        return YES;
    }
    

    注意、fd_と書いてありますprefersNavigationBarHiddenはviewWillAppear/viewWillDisappear/などの一連の廃棄操作について書くことができません.この一言でナビゲーションバーを隠すコードが網羅されているからです