Спасибо за статью! В Joom решали очень похожую задачу - кэширование carthage-зависимостей и проверку на актуальность Carthage/Build
В префикс кэша мы дополнительно включаем конфигурацию: Debug / Release. Из-за этого, когда возникает задача проверки актуальности зависимостей в Build , то надо узнать как эти зависимости собраны через Release или Debug конфигурацию (иначе можно, например, собрать Release Candidate с зависимостями собранными с Debug конфигурацией)
В момент, когда транзишен заканчивается, мы можем изменить эти параметры и повлиять на скорость, чтобы избежать подергиваний в конце. Ниже приведу пример, изменяя только completionSpeed в интерактивном pop транзишене navigation controller'a
В начале статьи есть отссылка к Sheets, которые появились в SDK iOS 15. Я дополнил этот блок ссылкой на HIG, в котором Apple показывает, когда использовать Sheets уместно
Простыми словами Bottom Sheet - это "шторка, которая выезжает снизу". Такая "шторка" есть системных приложениях: Apple Maps, Stocks, Voice Memos и т.д.
Bottom Sheet в статье отличается от Sheets SDK iOS. В SDK iOS используются фиксированные размеры (т.н. detents): половина и полный экран. В предоставленном мною решении размер Bottom Sheet определяется размером контента
Спасибо за статью! В Joom решали очень похожую задачу - кэширование carthage-зависимостей и проверку на актуальность
Carthage/Build
В префикс кэша мы дополнительно включаем конфигурацию:
Debug
/Release
. Из-за этого, когда возникает задача проверки актуальности зависимостей вBuild
, то надо узнать как эти зависимости собраны через Release или Debug конфигурацию (иначе можно, например, собрать Release Candidate с зависимостями собранными с Debug конфигурацией)Сталкивались ли с такой задачей? Как решали?
Корректная ссылка на интерактивный pop транзишен
Привет! Хороший вопрос, в статье этому не уделяется внимания
Для интерактивного транзишена используется UIPercentDrivenInteractiveTransition. У него есть два свойства, которые влияют на завершение транзишена: completionSpeed и completionCurve
В момент, когда транзишен заканчивается, мы можем изменить эти параметры и повлиять на скорость, чтобы избежать подергиваний в конце. Ниже приведу пример, изменяя только completionSpeed в интерактивном pop транзишене navigation controller'a
Скорость транзишена теперь зависит от percentComplete. Константы подобраны на коленке. Их и вид функции можно подобрать под себя
В начале статьи есть отссылка к Sheets, которые появились в SDK iOS 15. Я дополнил этот блок ссылкой на HIG, в котором Apple показывает, когда использовать Sheets уместно
Простыми словами Bottom Sheet - это "шторка, которая выезжает снизу". Такая "шторка" есть системных приложениях: Apple Maps, Stocks, Voice Memos и т.д.
Bottom Sheet в статье отличается от Sheets SDK iOS. В SDK iOS используются фиксированные размеры (т.н. detents): половина и полный экран. В предоставленном мною решении размер Bottom Sheet определяется размером контента
Учёл ваше замечание в финальной ветке проекта, спасибо!
Привет! Спасибо за комментарий!
Действительно, закругление происходит у всех углов из-за cornerRadius. Более корректно будет использовать UIBezierPath