1

私は自分の問題をしばらく検索し、いくつかのヒントを試しましたが、まだ問題があります。

最初にいつ発生したかはわかりませんが、まだ発生しています。UIViewController を UINavigationController にプッシュすると、黒い画面が表示されます。

新しい ViewController を TapGesture ハンドラーにプッシュします (以下のコード)。黒い画面はシミュレーターの iOS 5.1 でのみ表示され、iOS 5.0 および 6.1 では正常に動作します。

- (void)handleTapGesture:(id)recognizer
{
    MyViewController *vc = [[MyViewController alloc] init];
    [vc.navigationItem setRightBarButtonItems: nil];

    int i = 0;
    CGPoint tapLocation = [recognizer locationInView:self.scrollView];
    for(UIView *view in self.scrollView.subviews) {
        if([view isKindOfClass:[UIImageView class]]) {
            // remove quickbars from suberview
            [self removeQuickBarFromSuperView:view];
            if(CGRectContainsPoint(view.frame, tapLocation)) {
                vc.documentDir = self.documentDir;
                vc.imageSourcePath = self.imageSourcePath;
                vc.content = [content objectAtIndex:i] ;
            }
            i++;
        }
    }
    [self.navigationController pushViewController:vc animated:YES];
}

私もそれをテストしました

MyViewController *vc = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:[NSBundle mainBundle]];

(またはバンドル: なし)

これも 5.0 と 6.1 では問題なく動作しますが、5.1 ではアプリがクラッシュします。

アドバイスをいただければ幸いです。

敬具

トーベン

4

0 に答える 0