Есть ли инструмент или веб-сайт, которые могут помочь мне создать пользовательский интерфейс для приложения Android с помощью перетаскивания?
Я нашел этот сайт, но хочу знать, есть ли для этого более стабильный инструмент или веб-сайт?
Есть ли инструмент или веб-сайт, которые могут помочь мне создать пользовательский интерфейс для приложения Android с помощью перетаскивания?
Я нашел этот сайт, но хочу знать, есть ли для этого более стабильный инструмент или веб-сайт?
Ответы:
Позвольте мне быть тем, кто привнесет немного реальности в эту тему. Хорошего графического интерфейса для работы с Android не существует. Если вы работаете в среде графического интерфейса собственного приложения, например, в Delphi, вы, к сожалению, разочаруетесь в удобстве использования редактора ADK и DroidDraw. Я несколько раз пробовал продуктивно работать с DroidDraw и всегда возвращаюсь к раскрутке XML вручную.
ADK - хорошая отправная точка, но пользоваться им непросто. Размещение компонентов внутри макетов - это кошмар. DroidDraw выглядит фантастически, но я даже не могу открыть с его помощью существующие функциональные XML-макеты. Он каким-то образом теряет половину макета и не может втягивать изображения, которые я указал для кнопок, фона и т. Д.
Суровая реальность такова, что пространство для разработчиков Android остро нуждается в гибком, простом в использовании, надежном средстве разработки с графическим интерфейсом пользователя, аналогичном тем, которые используются для разработки .NET и Delphi.
Плагин Android Development Tools (ADT) для Eclipse включает визуальный редактор для файлов макетов приложений Android:
Самый простой способ - с REBOL 3:
http://rebolforum.com/index.cgi?f=printtopic&permalink=Nick25-Aug-2013/10:08:38-7:00&archiveflag=new
Вот 10 полнофункциональных демонстрационных программ с графическим интерфейсом пользователя. Они работают на ОС Android и настольных ПК с использованием одного и того же кода:
REBOL []
load-gui
view [text "Hello World!"]
REBOL [title: "Tiny Note Editor"]
do %r3-gui.r3 ; download this file manually or just use load-gui as above
view [
a1: area
button "Save" on-action [write %notes.txt get-face a1]
button "Load" on-action [set-face a1 to-string read %notes.txt]
]
REBOL [title: "Data Entry to CSV File"]
do %r3-gui.r3
view [
text "First Name:"
f1: field
text "Last Name:"
f2: field
button "Submit" on-action [
write/append %cntcts.txt rejoin [
mold get-face f1 " " mold get-face f2 newline
]
request "" "Saved"
]
a1: area
button "Load" on-action [set-face a1 to-string read %cntcts.txt]
]
REBOL [title: "Text File Reader (How to use a text list file selector)"]
do %r3-gui.r3
view [
a1: area
button "Load" on-action [
files: read %./
view/modal [
text "File Name:"
t2: text-list files on-action [
set-face a1 to-string read(to-file pick files get-face t2)
unview
]
]
]
]
REBOL [title: "List-View (Grid) Example"]
do %r3-gui.r3
view [
text-table ["1" 200 "2" 100 "3"][
["asdf" "a" "4"]
["sdfg" "b" "3"]
["dfgh" "c" "2"]
["fghj" "d" "1"]
]
]
REBOL [title: "Calculator"]
do %r3-gui.r3
stylize [
btn: button [
facets: [init-size: 50x50]
actors: [on-action:[set-face f join get-face f get-face face]]
]
]
view [
hgroup [
f: field return
btn "1" btn "2" btn "3" btn " + " return
btn "4" btn "5" btn "6" btn " - " return
btn "7" btn "8" btn "9" btn " * " return
btn "0" btn "." btn " / " btn "=" on-action [
attempt [set-face f form do get-face f]
]
]
]
REBOL [title: "Sliding Tile Puzzle"]
do %r3-gui.r3
stylize [
p: button [
facets: [init-size: 60x60 max-size: 60x60]
actors: [
on-action: [
t: face/gob/offset
face/gob/offset: x/gob/offset
x/gob/offset: t
]
]
]
]
view/options [
hgroup [
p "8" p "7" p "6" return
p "5" p "4" p "3" return
p "2" p "1" x: box 60x60 white
]
] [bg-color: white]
REBOL [title: "Math Test"]
do %r3-gui.r3
random/seed now
x: does [rejoin [random 10 " + " random 20]]
view [
f1: field (x)
text "Answer:"
f2: field on-action [
either (get-face f2) = (form do get-face f1) [
request "Yes!" "Yes!"][request "No!" "No!"
]
set-face f1 x
set-face f2 ""
focus f2
]
]
REBOL [title: "Minimal Cash Register"]
do %r3-gui.r3
stylize [fld: field [init-size: 80]]
view [
hgroup [
text "Cashier:" cashier: fld
text "Item:" item: fld
text "Price:" price: fld on-action [
if error? try [to-money get-face price] [
request "Error" "Price error"
return none
]
set-face a rejoin [
get-face a mold get-face item tab get-face price newline
]
set-face item copy "" set-face price copy ""
sum: 0
foreach [item price] load get-face a [
sum: sum + to-money price
]
set-face subtotal form sum
set-face tax form sum * .06
set-face total form sum * 1.06
focus item
]
return
a: area 600x300
return
text "Subtotal:" subtotal: fld
text "Tax:" tax: fld
text "Total:" total: fld
button "Save" on-action [
items: replace/all (mold load get-face a) newline " "
write/append %sales.txt rejoin [
items newline get-face cashier newline now/date newline
]
set-face item copy "" set-face price copy ""
set-face a copy "" set-face subtotal copy ""
set-face tax copy "" set-face total copy ""
]
]
]
REBOL [title: "Requestors"]
do %r3-gui.r3
x: request/ask "Question" "Do you like this?."
either x = false [print "No!"] [print "Yes!"]
x: request/custom "" "Do you like this?" ["Yay" "Boo"]
either x = false [print "Boo!"] [print "Yay!"]
view [button "Click me" on-action[request "Ok" "You clicked the button."]]
Вы также можете попробовать это . Если вам нравится концепция контроллера представления модели и быстрое прототипирование, я бы сказал, что вам понравится идея, лежащая в основе этого;)
SimpleUi (https://github.com/bitstars/SimpleUi)
Сгенерированный пользовательский интерфейс (код ниже):
Полный код для создания этого пользовательского интерфейса Android :
Я использую его в реальных приложениях, не только для быстрого прототипирования или диалогов, и он хорошо протестирован на протяжении многих лет. Концепция основана на принципе управления представлением модели, и для наиболее распространенных сценариев есть готовые к использованию компоненты, которые автоматически выглядят правильно на любом устройстве. Я не говорю, что его следует использовать для любого пользовательского интерфейса (например, просмотр списков должен выполняться вручную), но для большинства случаев использования это должно быть весьма удобно;) О, и не стесняйтесь создавать его и улучшать, если хотите
https://play.google.com/store/apps/details?id=com.mycompany.easyGUI попробуйте этот инструмент не бесплатно, но предлагает простой способ создать пользовательский интерфейс Android на вашем телефоне
Это выглядит как более многообещающее решение: IntelliJ Android UI Designer.
http://blogs.jetbrains.com/idea/2012/06/android-ui-designer-coming-in-intellij-idea-12/
http://www.appinventor.mit.edu/
Создание приложения App Inventor начинается в вашем браузере, где вы проектируете, как приложение будет выглядеть. Затем, подобно соединению кусочков пазла, вы задаете поведение своего приложения. Все это время благодаря живому соединению между вашим компьютером и телефоном ваше приложение появляется на вашем телефоне.
Это старый вопрос, который, к сожалению, не имеет хорошего решения даже через несколько лет. Я только что перенес приложение с iOS (Obj C) на Android. Самая большая проблема заключалась не во внутреннем коде (для многих / большинства людей, если вы умеете писать код на Obj C, вы можете писать код на Java), а в переносе собственных интерфейсов. Как сказал Тодд выше, макет пользовательского интерфейса по-прежнему вызывает боль. По моему опыту, самый быстрый способ разработать надежный интерфейс, поддерживающий несколько форматов и т. Д., - это старый добрый HTML.
Я обнаружил, что использование http://pencil.evolus.vn/ вместе с карандашными трафаретами из проекта http://code.google.com/p/android-ui-utils/ работает исключительно хорошо. Очень прост в использовании, очень легко смоделировать сложные конструкции
Не говорю, что это лучший способ, но хорошо иметь варианты. Necessitas - это проект, который портирует Qt на android. Он все еще находится на начальной стадии и ему не хватает полных функций, но для тех, кто знает Qt и не хочет беспокоиться о ужасном отсутствии хороших инструментов для пользовательского интерфейса Android, было бы разумно хотя бы подумать об использовании этого.