Я только что создал небольшое тестовое приложение с использованием CodenameOne без GuiDesigner. Теперь я попытался создать интерфейс с дизайнером с помощью IntelliJ Idea IDE. я сделал следующее:CodenameOne Как использовать файл ресурсов GUI Designer
- правой кнопкой мыши на
src
пакет: New -> Codename один контейнер. В результате получается файлMyContainer.java
. - Щелкните правой кнопкой мыши по MyContainer.java: Новый -> Codename One -> Codename One Designer. Это приведет к созданию окна GUI Builder.
- Я создал пустой контейнер и некоторые кнопки и добавил несколько изображений.
Теперь первая проблема: Где сохранить этот файл? Я сохранил его в каталоге src как MyContainer.res
.
Теперь вторая проблема: Как использовать этот файл res? Как загрузить его? Как получить много изображений из этого? Для чего нужен каталог res? Должен ли он быть там размещен?
Мой код выглядит следующим образом:
public class MyApplication {
private Form current;
private Resources theme;
private Toolbar mToolbar;
public void init(Object context) {
theme = UIManager.initFirstTheme("/theme");
// Enable Toolbar on all Forms by default
Toolbar.setGlobalToolbar(true);
// Pro only feature, uncomment if you have a pro subscription
// Log.bindCrashProtection(true);
}
public void start() {
if (current != null) {
current.show();
return;
}
Form form = new Form("Main", new BorderLayout());
// vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
// ----> Here I want the created container to be inserted into the form
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
}
public void stop() {
current = Display.getInstance().getCurrent();
if (current instanceof Dialog) {
((Dialog) current).dispose();
current = Display.getInstance().getCurrent();
}
}
public void destroy() {
}
}
Я вставил комментарий в выше, где я хочу, чтобы загрузить пользовательский интерфейс файла Рез кода.
Я пробовал много способов. Один из них был следующим, но я всегда получаю InvcationTargetException
выполнение второй строки:
UIBuilder uib = new UIBuilder();
Container cnt = uib.createContainer("MyContainer", "Container");
Я попробовал его с косой чертой перед первым параметром, и я изменил параметры, но ничего не получалось.
Должен ли я сначала начать с файла res для загрузки последующих файлов res? Если да, то как начать с файла res?
Пожалуйста, помогите мне после пробуждения 6 часов в это воскресенье.
Я только что попробовал новый GUI-конструктор и имел некоторые технические проблемы. Кажется, обновление не работает должным образом. Если я изменю, например. макет для макета границы не отображается сразу в дереве компонентов. После добавления нового компонента в дерево обновляется. Один раз пользовательский интерфейс больше не реагировал, и мне пришлось его убить (я использую Ubuntu 16.04). Но сгенерированные файлы Java и GUI, похоже, работают. – Guzzer
Но вопрос о добавлении изображений, которые будут использоваться в новом GUI Builder: должен ли я использовать старый графический пользовательский интерфейс для добавления изображения в проект? Я не вижу никакого элемента меню в новом GUI Builder, обеспечивающего функциональность добавления изображения. В видео поддержки старый GUI Designer используется для добавления изображений в файл res. – Guzzer
У нас есть основное обновление плагинов, появившееся в этот уик-энд, которое должно значительно перестроить конструктор графического интерфейса и, надеюсь, решить проблемы. Если это не устраивает проблемы с файлами в отслеживателе проблем с помощью способов воспроизведения http: // github.com/codenameone/CodenameOne/вопросы/изображения помещаются в файл res, который редактируется с помощью конструктора (который также разрабатывает темы). Старый инструмент был сочетанием нескольких инструментов: локализация, тематика, управление ресурсами и т. Д. Мы разворачиваем его до меньших инструментов за один раз, начиная с возможностей построения графического интерфейса. Остальные инструменты все еще существуют ... –