Telegram Web Link
This media is not supported in your browser
VIEW IN TELEGRAM
Подборка анимаций c WWDC c примерами кода

Прекрасная сессия, в которой Robb и Philip поделились примерами кода и новыми подходами к реализации.

📺 Новая анимация при скролле.
📺 Работа с цветом.
📺 View и эффекты.
📺 Работа с текстом и новые анимации (уже добавил себе в закладких).
📺 Metal shaders (а куда же без них).

После завершения WWDC уверен, что ещё вернёмся и рассмотрим многое детально.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
🥳 Нужен будет только один набор скриншотов при загрузке приложения в App Store (как для iPhone, так и для iPad).

📖 Отличная новость для дизайнеров, инди-разработчиков, да и для компаний тоже.

А ещё доступ к запросу фичеринга будет более явным (конечно же, без гарантий успеха).

🛩 Новый App Store Connect обещают выкатить осенью.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Память: ARC, side table, флаги, утечки и многое другое

🧠 Одна из основных тем в разработке — управление памятью. Наверняка каждый сталкивался в своей работе с проблемами, связанными с утечками и искал, как их решить.

В своём канале я регулярно делюсь советами и исследованиями на эту тему, более того, в приложении есть целая пачка вопросов на эту тему.

🧠 Уже сегодня в iOS IQ добавлена новая большая секция, которая отвечает на многие из этих вопросов.

Поэтому, если вы хотели бы расширить арсенал своих знаний и узнать больше об ARC, side table или тому, что приводит к утечкам памяти, уже сейчас доступно несколько десятков вопросов с разными уровнями сложности:

Подпишитесь на сайте или в телеграме (на год - выгоднее).

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Создание анимации в стиле Siri в iOS 18

Siddhant Mehta и Meng To использовали комбинацию из Mesh Gradient (пример вы можете увидеть в моём посте выше) и ripple-эффекта.

🛠 Исходный код проекта доступен на github.

📺 Сессия с примерами анимаций вот тут.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
NotPrivateAPIs — проект, который раскрывает некоторые приватные API

❗️Конечно, их нельзя использовать в рабочих проектах и выкладывать в App Store.

Например, меню со своими элементами это вообще та ещё задача (посмотрите реакции в Messages над сообщением, или реализацию в телеграме).

📖 Morris Richman собрал в одном месте вещи, которые юзает Apple: например, как добавить кастомный хэдер в UIAlertController или как поменять иконку приложения без предупреждения пользователя.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Realm vs SwiftData: что быстрее?

Jacob Bartlett из компании Emerge Tools провел большое исследование и сравнил производительность по трём ключевым метрикам:

1️⃣ Скорость.

2️⃣ Размер.

3️⃣ Память.

И хотя с точки зрения записи и выполнения простых запросов на чтение Realm впереди, но в некоторых моментах благодаря превосходному управлению графами объектов при работе с более сложными данными SwiftData оказалась производительнее.

При небольших объемах (≤10 000 элементов, что охватывает подавляющее большинство сценариев в мобильных приложениях) SwiftData также была намного быстрее при обновлении существующих данных.

📖 Много графиков, выводов и интересных особенностей можно узнать в этой статье.

📖 А на хабре вы возможно видели, что Realm не так хорош в этой статье от Dodo Engineering.

C моей точки зрения, всё, конечно зависит от задач. И для небольших проектов в целом можно использовать что угодно, а вот при разработке внутри компании все равно придётся все тщательно взвесить и, возможно, попробовать несколько подходов, или собрать себе собственный SQLite (привет, ВК).

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Создание эффекта перехода App Store с использованием NavigationTransition в iOS 18

Этот эффект можно увидеть, например, в разделе «Сегодня» или на 📺.

И если создание похожего перехода в iOS 18 может занять пару строк кода, то повторение анимации с учетом всех эффектов — куда более сложная задача.

📖 В этой статье Peter Friese поэтапно рассказывает, какие моменты стоит учитывать и показывает все итерации на примерах кода.

Подпишитесь, чтобы увидеть больше таких разборов и получить доступ ко всей базе знаний.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Создание динамических текстовых эффектов с помощью TextRenderer

👨‍💻 Используя метод draw протокола TextRenderer, мы должны выполнить рендеринг на основе информации об элементах, предоставленной Text.Layout в рамках GraphicsContext.

Новые функции в iOS 18 дают нам доступ ко многим ранее недоступным деталям, таким как определение того, обрезан ли текст через свойство Layout's isTruncated, количество строк, отображаемых после рендеринга, и конкретные данные о расположении текста.

📖 В этом материале рассмотрены не только плюсы, но и ограничения и сложности работы с анимацией в целом. А код можно посмотреть вот тут.

📖 Кстати, если хотите почитать про хардкорные вещи в TextView: работу с атрибутами, стилями, перфомансом, математикой для отрисовки и многим другим — на канале есть отличный пост.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Поддержать проект

Ваша поддержка == вклад в развитие приложения: новые вопросы, необычные форматы и многое другое
Please open Telegram to view this post
VIEW IN TELEGRAM
Создание многоступенчатой анимации в SwiftUI

Анимации в приложении служат визуальными индикаторами, информирующими пользователей о совершенных действиях.

Они особенно полезны при изменении интерфейса, например, при загрузке нового контента или демонстрации новых действий.

📖 В этой статье разбирается пример работы с PhaseAnimator (его особенно удобно применять, когда нам нужна анимация, которая непрерывно повторяется и реагирует на события).

📖 Кстати, в канале есть ещё один полезный материал про PhaseAnimator и KeyframeAnimator.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Создание интерфейса поиска в стиле Photos из iOS 18

Если вы следили за трасляцией в канале (или в других источниках), то в курсе, что в новой оси поменяется в том числе и приложение Photos.

Новый раздел выглядит как кастомная View в SwiftUI, которую Seb Vidal попытался повторить с помощью публичного API (но без реверс-инжиниринга не обошлось). Затрагивается и самый сложный момент — плавный переход фона в стиль клавиатуры.

📖 Здесь можно прочитать про основные этапы для создания такого экрана.

🛠 А здесь посмотреть на реализацию в коде.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2024/09/27 02:19:02
Back to Top
HTML Embed Code: