Истории победителей Apple Design Awards 2022
Начиная с июня, Apple публиковали кейс стади приложений и игр, получивших награду в Apple Design Awards. Максимально рекомендую тем, кто хочет разобраться, как лучше всего подходить к интерфейсам в своих проектах.
Начиная с июня, Apple публиковали кейс стади приложений и игр, получивших награду в Apple Design Awards. Максимально рекомендую тем, кто хочет разобраться, как лучше всего подходить к интерфейсам в своих проектах.
👍9❤🔥2🔥1
30 лайфхаков, которые могут повысить вашу продуктивность
💡Как быстро деманглить Swift код
💡Определение размера View без влияния на лэйаут
💡Простой градиент для заголовков навбара
💡Использование препроцессорных директив в Info.plist
💡Как быстро деманглить Swift код
💡Определение размера View без влияния на лэйаут
💡Простой градиент для заголовков навбара
💡Использование препроцессорных директив в Info.plist
www.fadel.io
30 tips to make you a better iOS developer
If you’d like to know more about the ins and outs of iOS/macOS development, you can find me on Twitter.
.image img { display: block; margin-left: auto; margin-right: auto; border-radius: 12px; } .image-caption { font-style: normal; display: inherit; text…
.image img { display: block; margin-left: auto; margin-right: auto; border-radius: 12px; } .image-caption { font-style: normal; display: inherit; text…
👍23🔥6🤯4🤡1
This media is not supported in your browser
VIEW IN TELEGRAM
Prism – рендеринг 3D объектов в SwiftUI
- Позволяет как отрисовывать объекты, так и анимировать кучу их свойств
- Работает с любым View в SwiftUI, совместим со всеми модификаторами
- Очень быстрый и не влияет на sizing
- Позволяет как отрисовывать объекты, так и анимировать кучу их свойств
- Работает с любым View в SwiftUI, совместим со всеми модификаторами
- Очень быстрый и не влияет на sizing
🔥43❤2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Связка pull-to-refresh и Dynamic Island
Интересный пример того, как можно обыгрывать Dynamic Island в интерфейсе.
Интересный пример того, как можно обыгрывать Dynamic Island в интерфейсе.
🔥94👍25🤡9🤩1
Различия в расчете corner radius в Android и iOS
- Если в Android выставить квадрату шириной 40dp corner radius 30dp, то он будет выглядеть в точности, как corner radius 20dp
- В iOS такого не происходит, и с повышением значения corner radius форма квадрата продолжает меняться
- Так происходит потому, что в Android есть внутреннее ограничение на то, что corner radius не может быть больше, чем половина самой короткой стороны фигуры. В iOS такого ограничения нет.
- Если в Android выставить квадрату шириной 40dp corner radius 30dp, то он будет выглядеть в точности, как corner radius 20dp
- В iOS такого не происходит, и с повышением значения corner radius форма квадрата продолжает меняться
- Так происходит потому, что в Android есть внутреннее ограничение на то, что corner radius не может быть больше, чем половина самой короткой стороны фигуры. В iOS такого ограничения нет.
👍30🤡20🤯8😢2
Особенности работы с Dynamic Island
- При конфигурации WidgetKit для Dynamic Island нужно задать вьюшки для четырех состояний: compact leading, compact trailing, expanded и minimal
- Expanded-состояние делит все пространство виджета на 4 области, и позволяет задать, в каких из них конкретно мы хотим отображать контент
- Можно задавать background color для compact и minimal состояний
- При конфигурации WidgetKit для Dynamic Island нужно задать вьюшки для четырех состояний: compact leading, compact trailing, expanded и minimal
- Expanded-состояние делит все пространство виджета на 4 области, и позволяет задать, в каких из них конкретно мы хотим отображать контент
- Можно задавать background color для compact и minimal состояний
🔥14
Новые материалы в HIG про графики
📊Charts: Супер подробная статья про то, как надо подходить к дизайну всех составляющих графика: данных, осей, легенды, accessibility
📈Charting data: советы по тому, как представлять данные в виде графиков
📊Charts: Супер подробная статья про то, как надо подходить к дизайну всех составляющих графика: данных, осей, легенды, accessibility
📈Charting data: советы по тому, как представлять данные в виде графиков
👍11
This media is not supported in your browser
VIEW IN TELEGRAM
Как правильно отображать строки с динамическим временем
- Если вы используете компонент Text для отображения текущего времени, то могли сталкиваться с тем, что его ширина немного прыгает при изменении времени
- Это происходит, потому что разные цифры имеют разную ширину
- Чтобы избежать этого, примените к Text модификатор monospacedDigit()
- Если вы используете компонент Text для отображения текущего времени, то могли сталкиваться с тем, что его ширина немного прыгает при изменении времени
- Это происходит, потому что разные цифры имеют разную ширину
- Чтобы избежать этого, примените к Text модификатор monospacedDigit()
🔥90👍29😱8🤡4
Как отключить вопрос про криптографию в App Store Connect
Чтобы App Store Connect не спрашивал при каждой загрузке билда в TestFlight, использует ли приложение криптографию, установите в Info.plist свойство App Uses Non-Exempt Encryption.
Чтобы App Store Connect не спрашивал при каждой загрузке билда в TestFlight, использует ли приложение криптографию, установите в Info.plist свойство App Uses Non-Exempt Encryption.
🔥76👍22👎2🥰1
Обзор новых пропозалов в Swift за август-сентябрь
Новый выпуск рассылки Swift Evolution Monthly:
✅Принятые пропозалы: улучшение print’ов для key path’ов, StaticBigInt и conditional compilation для атрибутов.
👨👩👧👦Планы на новые рабочие группы: Numerical/ML, Swift Tooling, Platform Support.
🔗Новые интересные питчи про возможные изменения в языке.
Новый выпуск рассылки Swift Evolution Monthly:
✅Принятые пропозалы: улучшение print’ов для key path’ов, StaticBigInt и conditional compilation для атрибутов.
👨👩👧👦Планы на новые рабочие группы: Numerical/ML, Swift Tooling, Platform Support.
🔗Новые интересные питчи про возможные изменения в языке.
👍7🔥5🌭2
Почему Bitcode был отключен в Xcode 14
Отличный ответ на Stack Overflow про то, почему Apple сначала требовали включить поддержку Bitcode во всех приложениях, а потом отказались от этого. Автор ответа рассказывает и про техническую реализацию Bitcode, и про проблемы, которые вызывает его использование.
Отличный ответ на Stack Overflow про то, почему Apple сначала требовали включить поддержку Bitcode во всех приложениях, а потом отказались от этого. Автор ответа рассказывает и про техническую реализацию Bitcode, и про проблемы, которые вызывает его использование.
Stack Overflow
Xcode 14 deprecates bitcode - but why?
Xcode 14 Beta release notes are out, all thanks to the annual WWDC.
And alas, the Bitcode is now deprecated, and you'll get a warning message if you attempt to enable it.
And I was wondering, why has
And alas, the Bitcode is now deprecated, and you'll get a warning message if you attempt to enable it.
And I was wondering, why has
👍39
Обзор Apple Watch Ultra от серийного разработчика приложений для часов
David Smith, кажется, самый известный инди-разработчик приложений для Apple Watch. Среди того, что он сделал: Watchsmith (супер-мощная система кастомизации циферблата) и Pedometer++ (удобный трекер активности для тех, кому недостаточно колец).
После покупки себе Apple Watch Ultra он выбрался в горы Шотландии, протестил часы и поделился своими впечатлениями с точки зрени пользователя и разработчика.
David Smith, кажется, самый известный инди-разработчик приложений для Apple Watch. Среди того, что он сделал: Watchsmith (супер-мощная система кастомизации циферблата) и Pedometer++ (удобный трекер активности для тех, кому недостаточно колец).
После покупки себе Apple Watch Ultra он выбрался в горы Шотландии, протестил часы и поделился своими впечатлениями с точки зрени пользователя и разработчика.
YouTube
Testing an Apple Watch Ultra in the Scottish Highlands
[For everyone asking what navigation app I'm using, that is an app I am currently developing. It isn't available yet, but I hope to get it finished soon.]
To really try and see how the Apple Watch Ultra performs in the field, I headed up to the Scottish…
To really try and see how the Apple Watch Ultra performs in the field, I headed up to the Scottish…
👍15🔥3
Альтернативы print
В Swift есть несколько альтернатив обычному print(): Swift.debugPrint(), String(reflecting:), Mirror(reflecting:) и dump(). В статье разбирается, в каких случаях они могут быть полезны.
В Swift есть несколько альтернатив обычному print(): Swift.debugPrint(), String(reflecting:), Mirror(reflecting:) и dump(). В статье разбирается, в каких случаях они могут быть полезны.
Swiftjective-C
Swift's print(), debugPrint(), String(reflecting:), Mirror(reflecting:) and dump()
Every codebase under the sun on God's green earth uses print statements to wrangle bugs. Let's look at the tools that Swift has for such cases.
👍38🤯8❤2
Статистика по использованию Swift и SwiftUI в приложениях Apple в iOS 16
- С помощью SwiftUI были реализованы следующие новые фичи iOS: LiveActivities, Swift Charts, Live Captions, Shared with You
- Количество бинарей, использующих Swift и SwiftUI продолжает расти
- Swift обошел C++
- С iOS 15 использование SwiftUI выросло практически в два раза
- С помощью SwiftUI были реализованы следующие новые фичи iOS: LiveActivities, Swift Charts, Live Captions, Shared with You
- Количество бинарей, использующих Swift и SwiftUI продолжает расти
- Swift обошел C++
- С iOS 15 использование SwiftUI выросло практически в два раза
🔥26👍7❤🔥2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Dynamic Island и кастомный индикатор загрузки
Держите еще один референс по возможному использованию Dynamic Island – индикатор загрузки файла, который превращается в уведомление о ее окончании.
Держите еще один референс по возможному использованию Dynamic Island – индикатор загрузки файла, который превращается в уведомление о ее окончании.
👍51🔥21👎2🤔2