Navigationsprobleme in einer sapui5 Unified Shell (sap.ui.unified.Shell)

Ich habe Unified Shell Control verwendet, um das Facebook-ähnliche Swipe-Menü zu implementieren, und ich habe eine Liste darin integriert, damit ich Menüelemente eingeben kann. Die Idee ist, dass ein Benutzer, wenn er auf ein bestimmtes Listenelement im Menü klickt, zu einer neuen Ansicht umgeleitet wird. Ich habe versucht, es mit bus.publish ("nav", "to" {id: ..}) zu implementieren, aber es funktioniert nicht. (Ich habe das Menü in die Vorhangleiste der Unified Shell gestellt.) Kann mir jemand helfen? Unten finden Sie die entsprechenden Codeausschnitte der Ansicht und des Controllers.

var oListTemplate = new sap.m.StandardListItem({
            title: "{title}",
            icon: "{icon}",
            description: "{description}",
            type: sap.m.ListType.Navigation,
            customData: new sap.ui.core.CustomData({
                key: "targetPage",
                value: "{targetPage}"
            })
        });

        var oList = new sap.m.List({
            selectionChange: [oController.doNavOnSelect, oController],
            mode: sap.m.ListMode.SingleSelectMaster
        });
        oList.bindAggregation("items", "/Menu", oListTemplate);

Der Controller

onInit: function() {

        this.getView().setModel(new sap.ui.model.json.JSONModel("model/menu.json"));
       this.bus = sap.ui.getCore().getEventBus();
    },


 doNavOnSelect: function(event){
     if (sap.ui.Device.system.phone) {
            event.getParameter("listItem").setSelected(false);
        }
     this.bus.publish("nav", "to", {
            id: event.getParameter('listItem').getCustomData()[0].getValue()
        });

Antworten auf die Frage(4)

Ihre Antwort auf die Frage