ストーリーボードには、TableViewControllerとDetailViewControllerへのプッシュセグエがあります。TableVCはnavコントローラーにネストされています。ストーリーボードでDetailViewControllerビューを背景色の黒に設定しました。DetailVCには、viewDidLoadにロードされるWebビューも含まれています。TableVCのprepareForSegueでWebビューのURLをDetailVCに渡します。
セルをタップするときにプッシュセグエを実行すると、奇妙な動作が発生します。セグエが実行された直後、DetailVCのビューbgの色は少しの間白になります(ナビゲーションバーが正常に表示されます)。次に、ビューのbgカラーが黒に変わります(ストーリーボードでは黒に設定されていました)。次に、Webビューがロードされます。DetailVCのビューbgカラーの遅延の原因がわかりません。
これが私のprepareForSegueメソッドです:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"Radio Show Playback"])
{
RadioShowPlaybackVC *radioShowPlaybackVC = segue.destinationViewController;
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
radioShowPlaybackVC.radioShowData = self.radioShows[indexPath.row];
}
}
編集:それはウェブビューと関係があります。Webビューを削除すると、必要に応じてセグエが遷移します。
編集:私の現在の回避策は、ロードされるまでWebビューを非表示にすることです。ロードされていない場合、bgの色は白で表示され、変更できません。