iOS 6 UIGestures(TAP)QLPreviewControllerの操作を停止
-
12-12-2019 - |
質問
現在ナビゲーションコントローラで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を使用します:
- > http://oleb.net/blog./ 2012/10 /リモートビューコントローラ - IN-IOS-6 /
-
https://twitter.com/eldi/Statuses/253438028163457024
=>あなたがそれを押すと、あなたのアプリ全体はそのウィンドウとジェスチャー認識者を含むBGに移動します
所属していません StackOverflow