Как я могу изменить положение плавающей кнопки в Codenameone?

#codenameone

#codenameone

Вопрос:

Кажется, что FloatingButton добавлен только в Form.getContentPane() и не может быть добавлен в контейнер Добавление его в мою форму заставило бы кнопку закрывать некоторые компоненты под,

Есть какое-нибудь решение этой проблемы? Я хотел бы разместить ее внутри таблицы прокрутки в BorderLayout.ЦЕНТР

здесь не так много вариантов:

 fab.bindFabToContainer(current, Component.RIGHT, Component.CENTER);
    
  

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

Ответ №1:

 fab.bindFabToContainer(current, Component.RIGHT, Component.CENTER);
  

Не добавляет fab в контейнер. Он создает новый контейнер и возвращает его, чтобы правильное утверждение было:

 current = fab.bindFabToContainer(current, Component.RIGHT, Component.CENTER);
myForm.add(current);
  

Поскольку база данных должна располагаться сверху, и мы не хотим изменять существующий макет, мы создаем новый контейнер-оболочку со слоистой компоновкой.

Обратите внимание, что на странице формы / содержимого мы можем использовать существующий макет уровня формы (плюс панель содержимого не может быть заменена), поэтому мы обнаруживаем это и используем особый случай с многоуровневой панелью.

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

1. Я действительно не понял, в моем заявлении в качестве формы указано «current», а кнопка является сумматором, как показано на рисунке в позиции SOUTH_EAST кадра над BorderLayout. ЮГ, как я могу добавить fab на SOUTH_EAST в BorderLayout. CENTER, ? без использования возвращаемого значения для метода создания fab

2. Поэтому вместо использования current в моем коде просто используйте table и присваивайте возвращаемое значение tableReplacement затем вместо добавления table в форму add tableReplacement . Однако я не уверен, насколько хорошо он справится с возможностью прокрутки. Основная идея заключается в том, что это должно «плавать».