If I use this.getView()
inside the controller of a view I can retrieve it without problems.
How can I retrieve the view if I am outside the controller (e. g. in
When I create a view i set a id
var theView=sap.ui.xmlview("OperationDetail, "<name of view>");
then i retrieve it by id
var theView = sap.ui.core.Core().byId("OperationDetail");
var myPage=theView.byId("pageOperation");
varRequired = sap.ui.getCore().byId("<name of view>");
this
keyword refers to only the particular controller where as sap.ui.getCore()
refers to the project views.
You can instantiate another view using:
var view = sap.ui.jsview("<name of view>");
If you´re using different view types you can choose the necessary function from here.
To avoid multiple instantiation you could do something like this:
var view = sap.ui.getCore().byId("id");
if (view === undefined) {
view = sap.ui.jsview("id", "<name of view>");
}
See this for more details regarding view definition/instantiation and IDs.