SAP UI5 Popover не отображает содержимое должным образом, если содержимое PAGE

Я пытаюсь поместить XML-представление, содержащее страницу в качестве содержимого, и разместить его внутри всплывающего окна, xmlviewXML-представление, которое я использую, выглядит так: ,

<mvc:View controllerName="controllerPath"
    xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m"
    xmlns:core="sap.ui.core" height="100%" width="100%">
    <Page height="100%"
          width="100%">
    <content>
       //some content...
    </content>
    </Page>
</mvc:View>

И я создаю такое всплывающее окно внутри фрагмента,

<core:FragmentDefinition
    xmlns="sap.m"
    xmlns:core="sap.ui.core">
    <Popover
        title="{Name}"
        class="sapUiContentPadding"
        placement="Bottom">
       //placing above view here...
    </Popover>
</core:FragmentDefinition>

Но если я это сделаю, страница внутри всплывающего окна не будет отображаться из-за некоторой проблемы с высотой. И я хочу установить высоту всплывающего окна на основе высоты представления (высоты содержимого всплывающего окна). Я пытался использовать всплывающее окно contentHeight="auto", но это не сработает. Итак, как показать всплывающее окно исходя из его содержания?


person Manjunath M    schedule 06.01.2017    source источник
comment
Не используйте представление: прямо поместите страницу в свое всплывающее окно, и вы получите то, что хотите :) (представление Требовать, чтобы родительский элемент управления имел явную высоту, когда всплывающее окно запрашивает его размер у своего дочернего элемента: 2 из них могут не работают вместе, как вы ожидаете)   -  person Ji aSH    schedule 11.01.2017
comment
На самом деле, это всплывающее окно представляет собой общий контейнер, в котором я должен размещать любое представление, которое я получаю динамически... так есть ли какое-либо решение для этого?   -  person Manjunath M    schedule 12.01.2017
comment
установка явной высоты и ширины для представления может работать? (не 100%, размер в px)   -  person Ji aSH    schedule 12.01.2017


Ответы (1)


Для элемента управления sap.m.Page нет свойств высоты и ширины. Однако у sap.ui.core.View есть свойства высоты и ширины. Итак, назначьте ширину и высоту для просмотра, а не для страницы.

Код:

<mvc:View controllerName="controllerPath"
    xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m"
    xmlns:core="sap.ui.core" height="50rem"
          width="50rem">
    <Page >
    <content>
       //some content...
    </content>
    </Page>
</mvc:View>

Кроме того, пусть ширина и высота по умолчанию для Popover. Дайте мне знать, если это работает для вашего требования.

Обновление: я задал 100% высоты и 100% ширины встроенному представлению, а также установил 100% для contentHeight и contentWidth Popover. У меня есть вся страница. Скриншот прилагается.

введите здесь описание изображения

person Rahul Bhardwaj    schedule 08.01.2017
comment
Да даже я дал высоту и ширину для просмотра тогда тоже такая же проблема. и высота и ширина не должны быть статичными как в PX или REM, если я даю высоту и ширину вида в процентах то тоже такая же проблема. - person Manjunath M; 10.01.2017
comment
@ManjunathM Обновленный ответ. Дайте мне знать, если это работает - person Rahul Bhardwaj; 10.01.2017
comment
Спасибо, но я хочу, чтобы высота содержимого основывалась на содержимом страницы, то есть всплывающее окно должно отображаться только до тех пор, пока текст не закончится, а пространство под ним бесполезно... так как этого добиться? - person Manjunath M; 10.01.2017