2015-04-10 2 views
0

Я пытаюсь создать что-то вроде экрана входа в систему. Одно поле ввода для имени и одно поле ввода для пароля. Я делаю это через view и shell. Вот что у меня есть.SAPUI5 - добавление дополнительных элементов для просмотра

app.js:

var myView = new sap.ui.view({ 
    viewName: "myapp.view.My", 
    type: sap.ui.core.mvc.ViewType.JS 
}); 

var oShell = new sap.m.Shell("mainShell", { 
    app: myView 
}); 

oShell.placeAt("content"); 

My.view.js:

sap.ui.jsview("myapp.view.My", { 
    createContent: function(oController) { 

     var oNameInput = new sap.ui.commons.TextField(); 
     var oPasswordInput = new sap.ui.commons.TextField(); 

     return oNameInput, oPasswordInput; 
    } 
}); 

проблема заключается в том, что только одно поле показывает, или второй находится на первом. Какова логика добавления большего количества элементов в представление? Благодарю.

+1

попробовать 'sap.ui.layout'-библиотеку (в начале, особенно в HorizontalLayout и VerticalLayout) https://openui5.hana.ondemand.com/#docs/api/ symbols/sap.ui.layout.html – herrlock

+0

О макете, есть что-то вроде создания макета в андроиде? Я имею в виду XML-файл. – miskohut

+0

Я мало знаю о развитии Android, но вы можете использовать [XML-Views] (https://openui5.hana.ondemand.com/#docs/guide/91f292806f4d1014b6dd926db0e91070.html), если вам нравится – herrlock

ответ

0

В вашем случае вы фактически возвращаете только первый элемент. Верните как массив:

[oNameInput, oPasswordInput] 

и он должен работать.

0

I второй комментарий herrlocks. Вы должны включить библиотеку sap.ui.layout и упорядочить эти два элемента в объект макета по вашему выбору [1]. Затем вы возвращаете единственный объект макета, который содержит ваши объекты ввода имени и пароля.

[1] https://sapui5.netweaver.ondemand.com/sdk/#docs/api/symbols/sap.ui.layout.html

+0

да это работающ отлично также – miskohut

Смежные вопросы