对话框如何确定包含的 NavContainer 的正确大小?

How can a dialog determine the correct size for contained NavContainers?

我想向包含 NavContainer 的应用程序添加一个弹出窗口。我需要它稍后在弹出窗口中的两个不同视图之间切换。现在 NavContainer 似乎需要一个固定的高度和宽度值来显示内容。否则弹出窗口将仅以页眉和页脚行的大小显示。我意识到我可以固定大小,但这不是响应式应用程序的意义。

我的代码在没有固定信息的情况下看起来像这样:

<core:FragmentDefinition
  xmlns="sap.m"
  xmlns:core="sap.ui.core"
  xmlns:l="sap.ui.layout"
  xmlns:f="sap.ui.layout.form"
>
  <Dialog id="genericDialog"
    showHeader="false"
    title="Detail View"
  >
    <NavContainer>
      <Page id="page1">
        <List items="{/avGenericSet}">
          <CustomListItem class="sapUiResponsiveMargin">
            <ObjectIdentifier title="{title}"/>
            <Input value="{value}"/>
          </CustomListItem>
        </List>
      </Page>
      <Page id="page2">
        <!-- ... -->
      </Page>
    </NavContainer>
    <endButton>
      <Button text="Close" press="closeGenericDialog"/>
    </endButton>
  </Dialog>
</core:FragmentDefinition>

可以在所有弹出窗口类型(DialogPopoverResponsivePopover)中观察到该行为。你们中有人知道解决方法吗?还是我必须告别 "responsive" 弹出窗口?

尝试使用对话框中的 contentHeight="100%"(如果需要,还可以使用 contentWidth)。这是一个 示例 https://embed.plnkr.co/7nimup1UMGsifeDQ?show=view/fragment/Dialog.fragment.xml,preview