SAP UI5 主从应用程序

SAP UI5 Master Detail Application

我在sapui5做了一个Master Detail应用。问题是当我点击复选框时,数据显示在详细信息页面上,但是当我取消选中复选框时,详细信息页面中的数据没有改变。

Here is my View code:

<List id="fruits" items="{/fruits}" mode="MultiSelect" 
                growing="true" growingThreshold="20" 
             selectionChange="onItemPress" updateFinished="attachUpdateFinished" >
                <!--<DisplayListItem label="{name}" value="{benefit}"></DisplayListItem>-->
                <ObjectListItem intro="{Po_No}" title="{name}" number="{Po_Status}" >
                
                <attributes>
                    <ObjectAttribute text="{type}" title="Category"></ObjectAttribute>
                </attributes>
                </ObjectListItem>
            </List>
            <ObjectHeader id="objid" title="{Po_No}"/>

这是我的控制器代码:

onItemPress:function(oEvent){
            
             var oItem = oEvent.getParameter("listItem");
             var sPath = oItem.getBindingContext().getObject();
             
             var oRouter = sap.ui.core.UIComponent.getRouterFor(this); 
             oRouter.navTo("DetailPage",{
                Po_No : sPath.Po_No
             });
             
        },

[正如你在图片中看到的那样,我已经取消选择了 102,它仍然显示 102 的数据,我希望应该有被选中的项目的数据]

您正在使用列表项按下事件进行路由,这与是否选中复选框无关(同样有一个 selectionChange 事件)

除非您在未选中复选框时导航到不同的路线,否则详细信息页面中的数据不会更改(假设您有一个工作路线匹配处理程序)

如果您在列表中使用 mode="SingleSelectMaster" 作为 属性,您的应用应该可以正常运行。有关可用列表模式的完整列表,请参阅 https://sapui5.hana.ondemand.com/#/api/sap.m.ListMode