Как увеличить размер ввода и кнопки

#sapui5

#сапуй5

Вопрос:

У меня есть простая форма, которая выглядит следующим образом: введите описание изображения здесь

На большом экране это выглядит довольно маленьким. Я хотел бы увеличить размер и ширину.

Это код:

 <Page title="{i18n>authorization}">
        <content>
            <VBox alignItems="Center">
                <f:SimpleForm id="registration" editable="true" layout="ResponsiveGridLayout" labelSpanXL="3" labelSpanL="3" labelSpanM="3" labelSpanS="12"
                    adjustLabelSpan="true" emptySpanXL="3" emptySpanL="3" emptySpanM="3" emptySpanS="0" columnsXL="1" columnsL="1" columnsM="1"
                    singleContainerFullSize="true">
                    <f:content>
                        <Label text=""/>
                        <Text text="{i18n>userAuthorize}"/>
                        <Label text=""/>
                        <Input placeholder="Enter your email address" id="email" type="Email" value="{confirm>/email}" liveChange="onHandleLiveChangeEmail"/>
                        <Label text=""/>
                        <Button type="Accept" enabled="{confirm>/enable}" text="{i18n>confirm}" press="handlePressAuthorization"
                            ariaDescribedBy="acceptButtonDescription genericButtonDescription">
                            <layoutData>
                                <FlexItemData growFactor="1"/>
                            </layoutData>
                        </Button>
                    </f:content>
                </f:SimpleForm>
            </VBox>
        </content>
    </Page>
 

Обновить

Я удалил простую форму и разместил элементы управления в VBOX.

     <Page title="{i18n>authorization}">
        <content>
            <VBox alignItems="Center">
                <Label text=""/>
                <Text text="{i18n>userAuthorize}"/>
                <Label text=""/>
                <Input placeholder="Enter your email address" id="email" type="Email" value="{confirm>/email}" liveChange="onHandleLiveChangeEmail"/>
                <Label text=""/>
                <Button type="Accept" enabled="{confirm>/enable}" text="{i18n>confirm}" press="handlePressAuthorization"
                    ariaDescribedBy="acceptButtonDescription genericButtonDescription">
                    <layoutData>
                        <FlexItemData growFactor="1"/>
                    </layoutData>
                </Button>
            </VBox>
        </content>
    </Page>
 

Элементы управления по-прежнему выглядят очень маленькими:

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

Как я могу увеличить размер элементов управления?

Комментарии:

1. Вы пробовали играть с width и height в% ?

2. если вы используете VBox (ваш обновленный код), вам, вероятно, не нужны элементы управления Label => они используются в простой форме для запуска новой строки формы)

Ответ №1:

Свойства labelSpan<ScreenSize> и emptySpan<ScreenSize> — это те, которые управляют шириной фактических элементов в «строке» формы.

Больше информации здесь: https://sapui5.hana.ondemand.com/#/api/sap.ui.layout.form.SimpleForm

Например, для M у вас есть диапазон меток 3 и пустой диапазон 3 => оставляя 6 из 12 для фактических элементов. Попробуйте уменьшить labelSpanM и emptySpanM увеличить ширину, занимаемую элементом Text , Button и Input

При этом я не думаю, что выбор простой формы был здесь разумным выбором — почему бы вам не поместить три элемента непосредственно в VBox?

При этом также следует отметить, что в случае, если вы реализуете экран аутентификации внутри приложения, вам следует переосмыслить это и позволить уровням аутентификации позаботиться об этом (где бы ни работало ваше приложение)

Обновление после обновления вопроса: в зависимости от того, чего вы хотите достичь, вы можете просто добавить класс css к элементу управления и добавить немного css. это «ручной» способ. вы можете добавить пользовательскую тему и оформить кнопки там. вы можете добавить пользовательские расширения стандартных элементов управления, например, пользовательскую кнопку в качестве расширения стандартной кнопки. и полностью изменить там рендеринг. Я думаю, это более или менее возможности

Комментарии:

1. спасибо за ответ. Что вы имеете в виду под уровнями аутентификации?

2. Например, если ваше приложение работает на сервере ABAP, на сервере есть механизмы аутентификации. если ваше приложение работает на облачной платформе SAP, у него есть механизмы аутентификации. Если он работает на какой-либо другой (облачной) платформе, платформа также имеет механизмы аутентификации. Подумайте о сертификате клиента SAML / OIDC / X509 или даже о базовой аутентификации — каким бы ни был фактический механизм, о нем никогда не должно заботиться фактическое приложение. Есть исключения, например, вы реализуете интерфейс такого уровня аутентификации.

3. ага… Я понял. К приложению можно получить доступ из любой компании. Итак, чтобы решить мою проблему, я должен создать пользовательский css, верно?