четверг, 26 декабря 2013 г.

От идеи до App Store за 24 часа: Heads Up

imageЗдравствуйте, уважаемые читатели Хабрахабра!

Благодарю вас за столь теплый прием Бессвязного Девелопа!


В честь праздника (25 Декабря), устраиваем очередной 24-х часовой марафон по разработке приложения для iOS. В этот раз замахнулись на приложение «Heads Up!» — Топ 3 в канадском App Store. Конечно, клонов уже достаточное количество: тут и «Party Heads», и «Guess It?», и «Charades». Однако у всех этих приложений есть фатальные недостатки: они либо платные, либо увешаны рекламой, либо продают дополнительные наборы слов. Уму не постижимо! Продавать наборы слов! Это срочно нужно поправить и раздавать подобное приложение бесплатно, вместе со всем содержимым.


Как обычно, трансляция на bdev.tv, актуальный код на гитхабе, а общение в jabber'e: bdev@conference.mit.edu. Предлагайте свои варианты названия приложения и свои иконки: лучшие попадут в App Store!


А вместо скучного анонса на Хабрахабре, сегодня я приоткрою завесу тайны над iOS 7 технологией, которую мы будем использовать в приложении — параллакс слоев, как на главном экране.



В программе стрима





  • Умопомрачительная разработка приложения в прямом эфире 24 часа подряд

  • Общение со зрителями — влияйте на происходящее!

  • Предлагайте, какое приложение сделать бесплатным на следующей трансляции

  • Конкурс на лучшую иконку для приложения

  • Замечательный саунд-трек (Дюна included)

  • Интриги, смех, баги, расследования, котики




Параллакс, как он есть




Все, что нужно сделать — это создать пару объектов нового класса UIInterpolatingMotionEffect, задать им максимальные и минимальные значения, объединить в группу и приделать нашему UIView. Да, все настолько просто.

Создаем параллакс по оси х:



UIInterpolatingMotionEffect *xAxis;
xAxis = [[UIInterpolatingMotionEffect alloc] initWithKeyPath:@"center.x" type:UIInterpolatingMotionEffectTypeTiltAlongHorizontalAxis];




Создаем параллакс по оси y:

UIInterpolatingMotionEffect *yAxis;
yAxis = [[UIInterpolatingMotionEffect alloc] initWithKeyPath:@"center.y" type:UIInterpolatingMotionEffectTypeTiltAlongVerticalAxis];




Задаем им максимумы и минимумы:

xAxis.minimumRelativeValue = @-40;
xAxis.maximumRelativeValue = @40;

yAxis.minimumRelativeValue = @-40;
yAxis.maximumRelativeValue = @40;




Объединяем в группу:

UIMotionEffectGroup *group = [[UIMotionEffectGroup alloc] init];
group.motionEffects = @[xAxis, yAxis];




И добавляем к нашему UIView:

[view addMotionEffect:group];




image

Заключение




Огромное спасибо, что дочитали до конца! Отдельную благодарность выражаю команде и докладчикам с iOS 7 Tech Talks, откуда я и взял материал про параллакс слои.

К сожалению, iTunes Connect в спячке до 27го декабря, поэтому выложить приложение в AppStore получится только в пятницу; но весь код будет доступен на гитхабе, так что не стесняйтесь устанавливать себе и тестировать перед релизом (буду рад всем багам, которые найдете).


Милости прошу к нам в уютный стрим! Всем продуктивных рабочих дней!


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers.


Комментариев нет:

Отправить комментарий