enyo, Как сделать горизонтальную прокрутку

Я сделал простое приложение enyo для прокрутки сосков. Он прокручивается вертикально, но не горизонтально. Кроме того, в документации говорится, что вы должны установить размер прокрутки. В примере кода используется flex: 1 для размера, может кто-нибудь объяснить, как это работает.

code enyo.kind({ имя: "MyApps.MainApp", вид: enyo.VFlexBox, компоненты: [ {вид: "PageHeader", содержимое: "Scroll"}, {имя: "curValue", содержимое:("Образец текста ")}, {вид: "Кнопка", заголовок: "Действие", при нажатии: "btnClickA"},

   {kind: "Scroller", flex: 1, onScrollStart: "btnClick", components: [
   { content:("Sample Text1")},
   { content:("Sample Text2")}

]}

], btnClick: function() { this.$.curValue.setContent("Начать прокрутку"); // обработка нажатия кнопки },

btnClickA: function() {
this.$.curValue.setContent("Button click");  // handle the button click

} });


person Ted pottel    schedule 27.12.2011    source источник


Ответы (1)


Значение «flex» относится к доле родительского FlexBox, которую занимает указанный дочерний элемент. Вы должны прочитать на FlexBoxes, чтобы лучше понять. При отсутствии других элементов управления flex: 1 указывает, что элемент управления должен занимать все родительское пространство. Если бы два элемента управления находились во FlexBox и оба были flex: 1, то они бы поровну делили родительское пространство. Если бы был flex: 2, то он занял бы в два раза (2x1) больше места, чем элемент управления flex: 1. Другими словами, значение flex устанавливает относительную долю родительского элемента (за вычетом любых негибких элементов управления), которую занимает дочерний элемент.

Я считаю, что вам не хватает того, что вы должны поместить что-то внутри скроллера, что шире, чем ширина скроллера, иначе... прокручивать нечего! Надеюсь, это поможет.

person Pre101    schedule 29.12.2011