MobDev Portal | Мобильная Разработка
5.98K subscribers
315 photos
63 videos
4 files
270 links
Присоединяйтесь к нашему каналу и погрузитесь в мир мобильной-разработки

Связь: @devmangx
Download Telegram
Новое в SwiftUI

Наконец-то мы можем делать так, чтобы вью автоматически скругляли углы, повторяя форму своего родителя, используя стиль углов concentric — это делает лейауты более цельными и аккуратными

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍5🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Swipe to Pay, или Как мы переписали слайдер оплаты на Compose

Полезная статья, в которой разработчик из Dodo Engineering подробно разбирает процесс создания достаточно сложного и прикольного компонента на Compose.

🔸Читать

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍75
Новое в SwiftUI

Легко применяйте дизайн Liquid Glass к своим вью с помощью модификатора glassEffect()

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Cовет по Flutter

Включите флаг checked в аннотации @JsonSerializable, чтобы точно увидеть, какие поля вызывают ошибки во время десериализации.

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
8
Разница между использованием атрибута .externalStorage и его отсутствием в SwiftData

.externalStorage — сохраняет в базе данных ссылку на изображение.
Без .externalStorage — сохраняет само изображение.

* Если изображение очень маленькое, SwiftData всё равно может решить сохранить его в базе, даже если вы используете атрибут .externalStorage

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
LayoutNode: What Actually Happens When You Write @Composable

Годная статья, в которой разбирается LayoutNode: что это такое, как строится дерево из LayoutNode, как это влияет на производительность и отрисовку.

- What is the LayoutNode?
- How Compose Actually Creates Nodes
- LayoutNode vs Modifier.Node
- Rendering Pipeline
- Custom Layouts
- The bottom line

🟡Читать

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
SwiftUI совет

Замыкания в Label могут содержать несколько вью, которые автоматически стилизуются в зависимости от контекста — это отлично подходит для отображения заголовка вместе с дополнительной информацией.

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍1
The dark corners of inline, crossinline, and reified in Kotlin

Статья про возможные проблемы при неправильном использовании inline, crossinline и reified в Kotlin.

- The promise and peril of inline
- Why crossinline matters in suspending contexts
- Reified: type-safe builders and beyond
- Debugging and testing inline code
- Checklist for safe use

🔸Читать

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
Совет по SwiftUI

В iOS 17.0+ вы можете управлять видимостью стрелки перехода в NavigationLink с помощью модификатора navigationLinkIndicatorVisibility().

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51
Сделали "Wordle" полностью на KMP, и весь код выложен на GitHub

- iOS (SwiftUI)
- Android (Jetpack Compose)
- Desktop (Compose for Desktop)

https://github.com/joreilly/WordMasterKMP

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍3
Новое в SwiftUI

Используйте backgroundExtensionEffect(), чтобы расширить контент за пределы safe area с размытым, зеркальным эффектом — для плавной визуальной целостности.

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
7
Integration Testing on Android: A Practical Guide with Hilt, Compose & Room

Практическое руководство по написанию интеграционных тестов в Android.

- Introduction
- Project setup
- Writing the test
- Swapping Real Dependencies with Fake Ones
- Testing Failure Scenarios
- Robotic Pattern for compose test
- Why Integration Testing Matters

🔸Читать

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Новое в SwiftUI

Добавляйте быстрый A–Z индекс прокрутки в свои списки — прямо как в приложении Contacts!

Используйте sectionIndexLabel() для каждой секции и сделайте индекс видимым через listSectionIndexVisibility(.visible).

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
6
This media is not supported in your browser
VIEW IN TELEGRAM
Безумие, насколько крутым апгрейд получился у animation API после перехода на Compose.

Анимации во View: ValueAnimator, XML-файлы, тонна бойлерплейта, слушатели повсюду

Анимации в Compose: animate*AsState, одна строка, полный доступ к suspend и корутинам. Плавность как масло ☺️

Апгрейд на 1000%

Зацени этот короткий гайд по анимациям в Compose:
https://developer.android.com/develop/ui/compose/animation/quick-guide

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍32
Новое в SwiftUI

В iOS 26.0 тулбары получили единый стиль.

Используй ToolbarSpacer, чтобы добавлять отступы между элементами.

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
9
TAO Bubbles: элегантные и настраиваемые подсказки для ваших Jetpack Compose приложений

Статья с примером реализации компонента для отображения подсказок на Jetpack Compose.

🔸Читать

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Новое в Swift 6.2: Raw Identifiers теперь можно использовать в качестве имён функций

Всё, что нужно — обернуть имя функции в обратные кавычки...

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

Идеально подходит для функций, которые реализуют тесты.

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2
The Magic Behind Retrofit: How a Simple Interface Becomes Your API Gateway

Если вдруг кто-то не знал как под капотом устроен и работает Retrofit, вот свежая статья с детальным разбором: Dynamic Proxy, аннотации, парсинг, формирование запросов и т.д.

🔸Читать

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Новое в SwiftUI

Теперь можно добавить подзаголовок в навигационный бар с помощью модификатора navigationSubtitle()

(iOS 26.0+)

👉 @MobDevPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
4