ARC
にUISplitViewController
を使用しています。UISplitViewController viewControllerを2回目に設定すると、エラーが発生する
コントローラをAppDelegate
に設定してから、rootViewController
にしてください。
@property (strong, nonatomic) UISplitViewController *splitViewController;
viewControllers
プロパティを使用して、ルートや詳細を設定する際に最初に作成正常に動作します:私はそれproperty
を作成してください行われてきました。もう一度設定するとうまくいきますが、3回目にクラッシュしてviewControllers
プロパティを設定しようとしました。私はviewControllers
プロパティを設定しようとすると、なぜそれがクラッシュしていました
Screens *edit = [[Screens alloc] initWithStyle:UITableViewStyleGrouped];
UINavigationController *c = [[UINavigationController alloc] initWithRootViewController:edit];
if ([Utility isIpad]) {
Map *a = (Map *)[[MyAppDelegate instance].splitViewController.viewControllers objectAtIndex:0];
NSArray *viewControllers = [NSArray arrayWithObjects:a, c, nil];
UISplitViewController *splitView = [MyAppDelegate instance].splitViewController;
splitView.viewControllers = viewControllers;// <--- Crashes here
} else {
[self presentModalViewController:c animated:YES];
}//end
:ここ
は、私はそれらを設定する方法ですか?ほぼ解放されたようですが、私はsplitViewController
がまだそこにあることを知っています...
これはARCと関係がありますか?
スタックトレース:
クラッシュ時のバックトレースとは何ですか?また、ARC関連の疑いもあります。 – mattjgalloway
よろしくお願いします。バックトレースはどのように表示されますか?私はデバッグナビゲータにあるものだけです。 –
デバッグナビゲータのYehには、バックトレースが必要です。下部にはスライダーがあり、右にスライドすると完全なバックトレースが得られます。 – mattjgalloway