IT-meetup Superjob «iOS — архітектура дизайну, коду, деплоя» (звіт, презентації, відео)

Відео, доповіді та короткий звіт для тих, хто не доїхав.

У новому офісі Superjob на Малій Дмитрівці відбувся перший в 2017 році митап з мобільного iOS-розробці. Додаток Superjob для пошуку роботи стабільно «проживає» в топі AppStore, а рахунок установок давно йде на мільйони. Ми першими запустили додаток для корпоративних користувачів, і сьогодні тисячі роботодавців вже навіть і не звертаються до веб-версії. Так що досвід у нашої команди дійсно унікальний. Таким зазвичай служби безпеки ділитися не дозволяють. Але у нас СБ немає — заборонити вечірку було нікому.


Читати далі →

IT-meetup Superjob «iOS — архітектура дизайну, коду, деплоя»

26 січня запрошуємо iOS-розробників на зустріч «iOS — архітектура дизайну, коду, деплоя» в новий офіс Superjob на Малій Дмитрівці. Приходьте обмінюватися досвідом!
Superjob продовжує серію IT-митапов. В цьому році ми зробимо акцент на розробці мобільного та Data Science.image

Читати далі →

Як зробити комірку таблиці зрушуваної для відображення додаткових опцій в додатках iOS

Як перекладач заздалегідь прошу вибачення за можливі помилки в перекладі. Буду вдячний повідомленнями про помилки для їх якнайшвидшого виправлення.

Коли iOS 7 була вперше анонсована, одним з багатьох візуальних нововведень, що особливо зацікавило мене, був жест swipe-to-delete (смахни щоб видалити) у додатку Mail. Ви вже давно чудово знайомі з цією функцією програми. Після того як проводите по комірці таблиці, ви бачите кнопки кошика, додаткових опцій («Ще») і помітки листи прапором. При натисканні на кнопку «Ще» стає активною панель вибору дії, на якій ви можете вибрати одну з опцій дії з листом — Відповісти, Помітити прапором і т. д.

Думаю, що це відмінний інструмент для маніпулювання записами таблиці. Однак, як ви чудово знаєте, що Apple не надає цій можливості для розробників iOS 7. Ви можете лише додати жест для функції видалення записів з таблиці. Інші опції роботи з записом таблиці обмежені стандартним додатком Mail. Поняття не маю чому Apple обмежує використання такого прекрасного інструменту тільки своїми додатками. На щастя, деякі розробники створили рішення (такі як UITableView-Swipe-for-Options, MCSwipeTableViewCell) і зробили їх абсолютно безкоштовними.

У цьому уроці я буду використовувати бібліотеку SWTableViewCell. Подивимося, як вона допоможе нам реалізувати функцію swipe-to-show-options (смахни щоб побачити опції) у вашому додатку. SWTableViewCell досить проста у використанні і якщо ви розумієте як працює UITableView, у вас не повинно виникнути проблем з SWTableViewCell. Крім того, цей компонент підтримує відображення кнопок опцій при свайпе в обидві сторони. Ви швидко зрозумієте що це означає.

Отже, давайте приступимо і створимо наше демонстраційне додаток.

Читати далі →

Додаємо панель бічного меню свого iOS-додаток

Як перекладач заздалегідь прошу вибачення за можливі помилки в перекладі. Буду вдячний повідомленнями про помилки для їх якнайшвидшого виправлення.

Як я можу додати панель бічного меню свого iOS-додаток? Це один з найбільш поширених питань які ми отримуємо від своїх читачів. Сьогодні ми покажемо як створити бічне меню на зразок того, яке ви можете спостерігати, наприклад, у додатку від Facebook.

Для тих хто не знайомий з поняттям бічного меню в мобільних додатках, Кен Ярмост (Ken Yarmost) дав гарне пояснення цього елемента інтерфейсу і визначив його як:
Бічне меню являє собою панель, яка «виїжджає» знизу, ліворуч або праворуч від області основного вмісту додатка, що містить вертикальну, незалежну від основного вмісту додатки прокручування, і служить основним інструментом навігації в додатку.
З того моменту як Facebook представив бічне меню в своєму мобільному додатку, цей елемент інтерфейсу швидко став стандартом реалізації навігації з додатком. В тому чи іншому вигляді ви можете бачити бічне меню в таких популярних програмах, як Path, Mailbox, Gmail, Evernote і т. д.



Використання бічного меню, дозволяє реалізувати навігацію не віднімаючи дорогоцінного місця в основного вмісту на екрані мобільного пристрою, тому що в неактивному стані таке меню ховається за шаром основного вмісту додатки. Меню може бути викликано шляхом натискання кнопки меню навігаційної панелі. Після того, як меню стало активним, користувач може закрити його, використовуючи ту ж кнопку меню на панелі навігації або просто свайпом вліво по області активного вмісту додатки.

Читати далі →

Multiple Delegate

    У Cocoa дуже популярний патерн делегування . Стандартний спосіб реалізації цього патерну — додавання до делегатору weak властивості, яке зберігає посилання на делегат.
 
У делегування багато різних застосувань. Наприклад, реалізація якогось поведінки в іншому класі без успадкування. Ще делегування використовується як спосіб передачі повідомлень. Наприклад, UITextField викликає у делегата метод textFieldDidEndEditing:, який інформує його про те, що редагування закінчено, і т.д.
 
А тепер уявіть задачу: треба зробити так, щоб делегатор посилав повідомлення не одному делегату, а кільком, причому делегування реалізовано стандартним методом через властивість.
 
Читати далі →