Перенос элементов пользовательского интерфейса iOS на Android

леди и джентельмены!

Очень часто в своей работе я встречаю следующее требование от клиента при разработке приложений для Android: "сделать его похожим на приложение для iPhone".

Да, я знаю, что лучший способ — предложить ему канонический дизайн Android со всеми этими шаблонами, такими как панель инструментов, использование кнопки меню и т. д. Но иногда это не тот случай, вместо этого мне нужно заставить его выглядеть и анимировать просто то же. Это расстраивает.

Не могли бы вы, ребята, посоветовать мне библиотеку Android (если она есть) с элементами пользовательского интерфейса, подобными iOS? Заранее большое спасибо, я с нетерпением жду вашего ответа!


person Lonkly    schedule 22.08.2011    source источник
comment
Проголосовать за открытие строки   -  person ingsaurabh    schedule 22.08.2011
comment
Элементы пользовательского интерфейса IMO iOS сейчас скучны и устарели. Они существуют слишком долго, а пользовательский интерфейс выглядит скучным и нуждается в обновлении. Я думаю, что хорошо разработанное приложение для Android с панелью действий и панелью инструментов выглядит намного лучше. Я знаю, это вам не поможет... но, думаю, поэтому это и комментарий.   -  person Thomas Clayson    schedule 22.08.2011
comment
Да, верно. Я бы хотел разработать какое-нибудь приложение с нативным дизайном, но это часто не так, когда разрабатываются сервисные приложения, а не продуктовые.   -  person Lonkly    schedule 22.08.2011
comment
Я думаю, что здесь стоит упомянуть об обучении себя и своих клиентов. Пользователям Android не нужен интерфейс iPhone, и он не позволяет наилучшим образом использовать аппаратное обеспечение. Расскажите своему клиенту о различиях и преимуществах адаптации интерфейса и обучите себя тому, как лучше всего обосновать этот аргумент.   -  person Martyn    schedule 22.08.2011
comment
спасибо, но это довольно очевидно, хотя, как я уже говорил, это не так.   -  person Lonkly    schedule 22.08.2011


Ответы (4)


Чтобы расширить комментарий Мартина, с которым я согласен.

Возможно, есть веская причина, по которой клиент попросит об этом, но я уверен, что во многих случаях он может выиграть от оспаривания этого требования. Если бы мне представили эту просьбу, я бы сначала спросил «Почему?». Возможно, они ответят так:

  1. нам нужен согласованный опыт на разных платформах, или
  2. будет более рентабельно спроектировать один раз и применить к каждой платформе, или
  3. неважно почему, просто сделайте это!

Вот несколько ответов для каждого:

  1. у каждого пользователя, как правило, будет один телефон, и ему не потребуется, чтобы опыт работы с Android был идентичен iPhone — их заботит только то, что он работает и отлично выглядит на их телефоне. На самом деле, пользователь Android предпочел бы, чтобы вы использовали шаблоны пользовательского интерфейса, более распространенные для платформы, а не дизайн, соответствующий iOS. То же самое для пользователя iPhone.

  2. мы обнаружили, что наличие дизайнера, создающего набор креативов для iOS, позволяет нам в значительной степени использовать креатив как есть для Android. Несмотря на то, что Android может иметь вкладки сверху, а не снизу, мы все равно можем переносить фоны, стили кнопок, шрифты и цветовые схемы с одной платформы на другую. Будут небольшие различия, но в целом бренд и внешний вид должны хорошо сочетаться. Вот пример переноса одного креативного дизайна на разные платформы: http://daleburgosdesign.com/.

  3. если они ответят таким образом, вы можете подумать о том, чтобы отказаться от работы. Идеальное соответствие пикселей на разных платформах сложно, если не считать идей, предложенных в предыдущих ответах (OpenGL и использование WebView - через Macarse). Если клиент не может аргументированно обосновать это сложное требование, возможно, лучше поискать следующего клиента.

Не прямой ответ на ваш вопрос, но я надеюсь, что вы найдете его полезным!

person Andrew Little    schedule 27.08.2011

Я не знаю библиотеки пользовательского интерфейса iphone для Android, о которой я знаю. Что вы можете сделать, так это получить графический интерфейс iphone psd и переделать его для 3 размеров Android (для 3 диапазонов размеров) и использовать элементы этих psd для темы вашего приложения.

Я получаю подобные подобные требования. Иногда речь идет не о внешнем виде, а о потоке навигации по приложению и о том, как анимируются новые представления или действия. По моему опыту, нет простого способа сделать это. Так что в конечном итоге я делаю много настроек и хаков, чтобы выполнить работу. И я перевыставляю счет клиенту. :)

Кстати, вы также можете рассмотреть такие библиотеки, как Sencha Touch, они будут выглядеть одинаково на всех телефонах, использующих браузер webkit.

person blessenm    schedule 26.08.2011
comment
есть четыре диапазона размеров - ldpi mdpi hdpi xhdpi - person Jon Willis; 26.08.2011
comment
Спасибо за этот отличный совет. Можете ли вы рассказать мне больше о Sencha Touch? Как насчет его производительности? Это Javascript, так что это разумный вопрос, я думаю ^_^ - person Lonkly; 27.08.2011
comment
Sencha Touch — это библиотека javascript, которая поддерживает все мобильные устройства с браузером webkit. Они уже создали виджет для всех распространенных элементов управления в iOS. Недавно они добавили диаграммы в свою библиотеку. Я работал с ним один раз для проекта, и мой опыт с ним был довольно хорошим. Вы можете обернуть весь телефонный разрыв, что позволит вам получить доступ к собственному API, такому как камера. Если вы посмотрите витрину на форуме, вы увидите разные приложения. Его производительность довольно низкая для javascript. Я не скажу, что у него есть собственная скорость приложения, но для веб-приложения он довольно хорош. - person blessenm; 27.08.2011

Насколько я знаю, для Android нет библиотек виджетов, похожих на iOS.

Из-за этого вы можете разумно брать с клиента больше как за разработку, так и за поддержку, тем самым создавая стимул придерживаться стандартного дизайна и принципов пользовательского интерфейса Android.

person Dave    schedule 26.08.2011

Не существует библиотеки для переноса представлений iphone на Android, но если вы запускаете оба приложения с нуля, у вас есть два возможных подхода к совместному использованию представлений между обеими платформами.

Первый использует WebViews и кодирует HTML, JS и CSS. Такое приложение называется гибридным.

Второй использует openGL. Вы можете сделать это напрямую или с помощью такой структуры, как cocos2d-x.

В зависимости от того, что вы хотите, вы должны выбрать, что использовать.

person Macarse    schedule 26.08.2011