質問

現在ナビゲーションコントローラでQLPreviewControllerを使用しています。(PushViewController)

ナビゲーションバーを非表示にするには、UitaPgestrureRecognizerを使用します。ユーザーはナビゲーションバーを単一のタッチで表示/非表示にすることができます(タップ)。 これはiOS5 でうまく機能しました

- (void)viewWillAppear:(BOOL)animated {
   [super viewWillAppear:animated];

   UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapped:)];
   [tapRecognizer setNumberOfTapsRequired:1];
   [tapRecognizer setDelegate:self];
   [[self view] addGestureRecognizer:tapRecognizer];
   [tapRecognizer release];
}

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
    return YES;
}

- (void)tapped:(UIGestureRecognizer*)gestureRecognizer
{
    //hide -/- show navigation bar
    [[self navigationController] setNavigationBarHidden:![[[self navigationController] navigationBar] isHidden] animated:YES];
}
.

しかしiOS 6のリリースされたバージョンでは、タップは完全に無視されるので、私はもう私のナビゲーションバーを隠すことはできません。

ナビゲーションバーを隠したい理由は?

.NUMBS文書を開くと、ナビゲーションバーはナビゲーションバーの下に「シートボタン」を隠します。

ty。

役に立ちましたか?

解決

IOS 6以降、QLPreviewControllerは実際には完全に分離されたアプリ(別々のプロセスとすべて)です。

AppleはそのためにXPCを使用します:

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top