Класс Foo
имеет переменную List<Button> bar
, как я могу представить каждое использование кнопок UiBinder? Это даже возможно?
UiBinder - это шаблон XML для декларативной компоновки виджетов, а не является средством визуализации . Следовательно, в UiBinder XML не может быть условных операторов, циклов и других логических конструкций.
Вместо этого вы можете использовать Panel в UiBinder в качестве простого заполнителя для того, где вы хотите разместить все ваши кнопки. Создайте ссылку на эту панель в своем классе Java в ui: field. Прокрутите список кнопок и добавьте кнопки на панель в Java-коде, используя дескриптор поля.
Другой подход заключался бы в том, чтобы определить композицию и добавить композицию в UiBinder, и позволить композиту самому выполнять рендеринг кнопок. Просто зависит от того, что лучше всего подходит для вашего дизайна.