2017-04-20 4 views
1

Ich entwickle eine App für iOS.View View Controller von einem anderen View Controller in Container View

Ich möchte einen View-Controller (genannt Kind), der in einer anderen Ansicht in meinem Hauptansicht-Controller (genannt Eltern) angezeigt wird. Ich habe das geschafft, indem ich eine Containeransicht hinzugefügt habe, die den Child-View-Controller erfolgreich bettet.

In meinem Kind View-Controller habe ich eine Schaltfläche, die einen anderen (dritten) View-Controller öffnet.

Ich möchte diesen Bildschirm innerhalb der Grenzen des Ansichtsbehälters öffnen - aber es wird auf einem Vollbild angezeigt.

Gibt es eine Möglichkeit, den Ansichtscontainer so zu definieren, dass alle darin enthaltenen Segmente innerhalb seiner Grenzen angezeigt werden?

+1

Zeigen Sie Ihren Code, wie Sie den dritten Controller laden –

+0

Vielleicht war ich nicht klar genug, aber der Zweck war es, unabhängig von der Art und Weise in der Ansicht Behälter öffnen haben Sie die View-Controller geladen werden (in meinem Fall verwende ich ein 3rd Party SDK und ich habe keinen Zugriff auf seinen Code) - wie iframe in HTML –

Antwort

2

definesPresentationContext - eine UIViewController s Eigenschaft, die hier hilfreich sein könnte.

Ein boolescher Wert, der angibt, ob die Ansicht dieses Ansichtscontrollers abgedeckt ist, wenn der Ansichtscontroller oder einer seiner Nachkommen einen Ansichtscontroller darstellt.

https://developer.apple.com/reference/uikit/uiviewcontroller/1621456-definespresentationcontext

des Kindes Set-Eigenschaft auf true:

childViewController.definesPresentationContext = true 

Auch vor der Viewcontroller (3.) präsentiert seine modal Präsentationsstil gesetzt:

viewControllerToBePresented.modalPresentationStyle = .overCurrentContext 

Hope Diese hilft!

+0

Dies funktionierte perfekt – Aragunz

Verwandte Themen