Виджет GWT UIBinder с неизвестным количеством дочерних элементов

У меня есть вопрос о GWT UIBinder. Я хотел бы создать простую веб-страницу, на которой представлены фильмы на моем стримере. Я хотел бы иметь простой список фильмов - как на правой стороне YouTube.

Проблема в том, что эта программа не знает, сколько фильмов находится в моей базе данных, поэтому я не могу просто поместить (например) 5 элементов фильма (и 2 стрелки) в панель при создании MoviesList.ui.xml. Я хотел бы, чтобы этот номер был назначен при создании списка фильмов - и прокручивался влево (или вправо), когда пользователь нажимал каждую стрелку.

Вот мой список UiBinder xml:

<ui:UiBinder 
...
<g:HorizontalPanel ui:field="list">
    <f:LeftArrow ui:field="itemLeft" /> 
    <f:SamplesSmall ui:field="item1" />
    <f:Divider ui:field="div1" />
    <f:SamplesSmall ui:field="item2" />
    <f:Divider ui:field="div2" />
    <f:SamplesSmall ui:field="item3" />
    <f:Divider ui:field="div3" />
    <f:SamplesSmall ui:field="item4" />
    <f:Divider ui:field="div4" />
    <f:RightArrow ui:field="itemRight" />                               
</g:HorizontalPanel>
</ui:UiBinder> 

Как мне создать этот файл, чтобы количество элементов создавалось на лету?

Лучший


person Sobis    schedule 03.02.2011    source источник
comment
Помогает ли эта похожая тема?   -  person Tyler Holien    schedule 03.02.2011
comment
Вам действительно нужно знать точное количество отображаемых элементов? Почему бы вам не создать стрелку влево, контейнер для хранения, скажем, 5 элементов и стрелку вправо. После щелчка по стрелке вправо вы проверяете, какие 5 элементов должны отображаться дальше, очищаете свой контейнер и создаете следующие 5 элементов.   -  person z00bs    schedule 03.02.2011


Ответы (1)


Большое спасибо - вам обоим.

Я нашел способ сделать с FlexTable.

z00bs - отличная идея, но я бы хотел, чтобы элементы фильма скользили. В этом случае я не могу очистить контейнер и создать новые элементы. Я попытаюсь найти способ реализовать jquery.scrollTo.js в UiBinder.

Лучший

person Sobis    schedule 03.02.2011