im Apple-Standard-Master/Detail-Vorlage auszuführen, gibt der folgende Code ist die Handhabung des showDetail
segue:SplitViewController template - Welcher Mechanismus sagt das Gerät den Übergang in den Detail-Controller statt Master Controller
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "showDetail" {
if let indexPath = tableView.indexPathForSelectedRow {
let object = fetchedResultsController.object(at: indexPath)
let controller = (segue.destination as! UINavigationController).topViewController as! DetailViewController
controller.detailItem = object
controller.navigationItem.leftBarButtonItem = splitViewController?.displayModeButtonItem
controller.navigationItem.leftItemsSupplementBackButton = true
}
}
}
und das Drehbuch darauf hinweist, dass diese segue ist Art von Show Detail (e.g. Replace)
Meine Frage ist folgende:
Warum im Großbildmodus (aka: auf einem iPhone 6+, 7+ oder einem iPad) der Navigationscontroller
MasterViewController
nicht seine eingebettete Ansicht schiebt, wie ein normales segue tun würde (welcher Teil des Code macht es "arbeiten")?
der Code Da lese ich, werde ich auf einer iPad
erwarten, dass die Master-Controller sehen auf die detaillierte Steuerung geändert werden, aber das richtige Verhalten geschieht (Master nicht ersatzlos und Details werden aktualisiert) und ich kann nicht verstehen warum.
Hallo @Sweeper, Ich habe die 'Art' in' Show' geändert, wie Sie vorgeschlagen haben, es hat sich nicht auf das Verhalten der Anwendung (von beiden kompakten und großen Bildschirm) –