Я разрабатываю приложение Java ME, и мне нужны указатели на некоторые действительно хорошие библиотеки пользовательского интерфейса. Я видел несколько, таких как Java ME Polish. Там есть еще? Например, Приложение java ME от ebuddy имеет потрясающий пользовательский интерфейс, как и приложение java ME от gmail. Какие библиотеки они использовали бы или разработали бы сами?
Библиотеки пользовательского интерфейса Java ME
Ответы (10)
Sun недавно выпустила и выложила в открытый доступ свое решение для дерьмово выглядящего lcdui. Он называется LIghtweight UI Toolkit, и его можно найти на lwuit.dev.java.net.
В последнее время мы пробовали на kuix. Пока все хорошо и легче, чем код LWUIT.http://code.google.com/p/kuix
eSWT будет доступен для мидлетов на последней виртуальной машине J9, которая используется в телефонах Series60 3rd Edition с пакетом функций 2 (Nokia N78, 6210, N96...), но мы в основном говорим о более привлекательных элементах управления пользовательского интерфейса. По сути, мидлет теперь может больше походить на нативное приложение.
Sun недавно открыла исходный код LWUIT. На это тоже стоит обратить внимание.
Однако ничто не сравнится с рисованием собственных изображений на холсте. Общие менеджеры компоновки в любой библиотеке помогут вам только в этом. Вы должны смотреть на доступные технологии только тогда, когда у вас есть хорошее представление о том, сколько различных типов экранов должно быть в вашем приложении и как они выглядят.
Большинство приложений с потрясающими пользовательскими интерфейсами (Opera Mini, Gmail, любая игра от разработчика AAA) используют собственные пользовательские интерфейсы. Эти разработчики берут задачу разработки пользовательского интерфейса как еще одну в своих проектах и придают ей индивидуальность, привлекая профессиональных графических дизайнеров. Использование упакованной библиотеки позволит быстро выполнить задачу, но при этом приложение будет выглядеть универсальным и пресным (менее пресным, чем с пользовательским интерфейсом по умолчанию, но все же пресным и ограниченным).
Короче говоря, используйте упакованный пользовательский интерфейс для быстрой разработки, но не ожидайте, что уровень качества будет близок к приложениям, которые вы упомянули.
Я сейчас стою перед похожей дилеммой. В настоящее время мы используем высокоуровневую структуру LCDUI по умолчанию для ускорения разработки, но это сильно ограничивает наши возможности. Я думал, что лучшим вариантом будет использование стороннего фреймворка пользовательского интерфейса, но теперь я убежден, что если мы серьезно относимся к приложению, нам следует написать собственное. Как и все в программном обеспечении, если его миссия критична для вашего приложения, вы должны написать его самостоятельно, даже если это означает заново изобретать колесо.
Компания Digitalapes разработала инфраструктуру для разработки приложений J2ME, включающую высокоуровневую библиотеку пользовательского интерфейса.
Библиотека легкая и хорошо документирована, вы можете ознакомиться с ней на странице фреймворка Gear для получения дополнительной информации, или вы можете напрямую загрузить JAR и javadoc с страницы Gear на sourceforge.
блог Digitalapes также содержит серию руководств по использованию платформы.
Польский имеет действительно хороший набор компонентов пользовательского интерфейса, которые можно менять с помощью комментариев в стиле CSS. Он также имеет базу данных устройств для целей совместимости.
Несколько советов, если вы решите использовать лак (как это сделал я):
- Используйте eclipse и плагин mepose. Интеграция с netbeans действительно нервирует.
- Доска объявлений мертва, так что во что бы то ни стало !используйте список рассылки!.
- Если вы не знакомы с системой построения муравьев, вам лучше начать прямо сейчас.
- Польская книга J2ME не стоит своих денег. (Мое мнение). Документации на их веб-сайте и образца кода достаточно, чтобы дать вам надежный старт.
Я использовал SWT при развертывании на J2ME с полным профилем (IBM J9 на PocketPC), однако я не знаю, может ли он использоваться мидлетами. Это довольно хорошая библиотека с графическим интерфейсом, и она намного лучше, чем AWT.
К сожалению, компании обычно заканчивают тем, что разрабатывают свой собственный графический интерфейс, когда дело доходит до мобильной разработки. Это единственный способ получить полный контроль над вашими интерфейсами, но вы должны подумать, стоит ли это дополнительного времени на разработку, и вы также сами по себе, когда дело доходит до проблем совместимости устройств / ошибок телефонов, которых много.
Если вас устраивает менее гибкий интерфейс, вы можете использовать одну из существующих библиотек. В настоящее время я использую графический интерфейс J2ME с сайта http://www.garcer.com/. Мы получаем ту же гибкость, что и при разработке для настольных компьютеров, а также настраиваемые стили, поэтому, приложив немного дополнительных усилий, вы можете заставить его выглядеть так, как вы хотите.
Вы можете использовать LWUIT для разработки пользовательского интерфейса в среде J2ME.