Докуметация Cтарт Статьи Форум Лента Вход
Не официальное русскоязычное сообщество

Nifty GUI — Рекомендации

Опубликованно: 19.08.2017, 13:30
Последняя редакция, Andry: 20.08.2017 21:14

Эта страница представляет собой краткий список лучших практик, о которых вы должны знать, когда начинаете использовать графический интерфейс Nifty. В учебниках JME3 основное внимание уделяется деталям интеграции JME3-Nifty. Вы найдете больше возможностей в Руководстве пользователя Nifty GUI.

  1. Концепция Nifty GUI
  2. Nifty GUI Рекомендации
  3. Nifty GUI XML Компоновка или Nifty GUI Java Компоновка
  4. Nifty GUI Накладывается или Nifty GUI Проецируется
  5. Nifty GUI Java Взаимодействие

XML или Java?

Вы можете создавать элементы GUI от Nifty с использованием синтаксиса XML или Java. Какой из них выбрать? Эквивалентен ли синтаксис XML и Java? Не совсем. Обычно вы используете XML и Java вместе.

  • Создайте свою основную статическую компоновку UI с помощью XML — его чище писать и читать.
  • Используйте синтаксис Java для управления динамическими частями GUI во время выполнения — проще взаимодействовать с объектно-ориентированным кодом.
  • Пример: Вы создаете два UI со слегка отличающимися компоновками XML для мобильных и настольных компьютеров. Если вы используете одни и те же идентификаторы для эквивалентных элементов, ваш динамический Java-код работает одинаково в обоих случаях независимо от того, какая из двух базовых XML-компоновок будет вами использоваться. Это позволяет переключаться между телефонным и UI настольного компьютера, просто меняя один базовый XML-файл.

Редактирование и пред просмотр XML в SDK

  • Используйте мастер Создания Нового файла jMonkeyEngine SDK для создания нового XML-файла (из категории GUI, Empty Nifty File).
  • jMonkeyEngine SDK включает в себя редактор XML и специальный предварительный просмотр для файлов Nifty GUI.
  • Когда вы открываете файл XML, вы можете переключаться между редактором XML и режимом пред просмотра GUI.
Категория GUI в мастере Создания Нового файла также содержит образцы кода Nifty.

Проверка XML перед загрузкой

Класс Nifty имеет метод validateXml(), который принимает тот же входной аргумент XML, что и fromXml(). Nifty не проверяет Xml по умолчанию и будут неожиданные проблемы, если ваш XML не соответствует схеме. Добавление шага проверки поможет вам сэкономить время на отладке. Вы можете проверить правильность перед загрузкой или в модульных тестах.

Использовать завершение кода

  • Включите следующую XML-схему в первую строку вашего NiftyGUI XML-файлов
    <?xml version="1.0" encoding="UTF-8"?>
    <nifty xmlns="http://nifty-gui.sourceforge.net/nifty-1.3.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://nifty-gui.sourceforge.net/nifty-1.3.xsd http://nifty-gui.sourceforge.net/nifty-1.3.xsd">
         <!-- Теперь ваша IDE среда сообщает вам, что здесь присутствует один элемент <screen></screen> и.т.д. -->
    </nifty>
  • Теперь ваша IDE (включая jMonkeyEngine SDK) будет отображать дополнительную информацию и сделает код завершит завершенным для Nifty GUI API.

Используйте ID String правильно

  • Если вы хотите взаимодействовать с элементом, дайте ему ID (String).
  • Используйте прозрачные панели без ID в качестве анонимных прокладок.

Размер слоев и панелей

  • Задавайте ширину и высоту в процентах, GUI мог масштабироваться.
  • Используйте * вместо фиксированного значения, чтобы элемент заполнял оставшееся пространство автоматически.
  • Будьте осторожны при указании фиксированных размеров и проверяйте результат в различных разрешениях.

Цветовой код для ясности

Экраны, Слои и Панели…

  • … могут иметь цвет фона RGBA. +Вы можете использовать временные цвета во время фазы проектирования, чтобы лучше отделять контейнеры друг от друга.
  • … могут быть прозрачным. + В готовом GUI экраны, слои и панели обычно прозрачны; видимыми элементами являются изображения, текстовые поля и элементы управления внутри панелей.
Во время разработки (и во время обучения) следующий код отладки делает все панели видимыми. Это поможет вам организовать их и найти ошибки.

nifty.setDebugOptionPanelColors(true);

Перед релизом и во время тестирования снова установите для параметра отладки значение false.


Переведено для jmonkeyengine.ru, оригинал
Автор перевода: Andry

Добавить комментарий

jMonkeyEngine.ru © 2017. Все права сохранены.