This media is not supported in your browser
VIEW IN TELEGRAM
Xcode multi-cursor feature
Think everybody knows about this but whatever )))
Think everybody knows about this but whatever )))
This media is not supported in your browser
VIEW IN TELEGRAM
По-умолчанию, если вы добавляете кнопку в ячейку, вся ячейка будет реагировать на action этой кнопки.
Для ожидаемого поведения используйте модификатор
By default, if you add a button to a SwiftUI's cell, all the cell's area will react to button's action.
To fix this, use
#howto
Для ожидаемого поведения используйте модификатор
.buttonStyle(PlainButtonStyle())
(или .buttonStyle(BorderedButtonStyle())
, доступный с iOS 15)By default, if you add a button to a SwiftUI's cell, all the cell's area will react to button's action.
To fix this, use
.buttonStyle(PlainButtonStyle())
modifier (or .buttonStyle(BorderedButtonStyle())
available from iOS 15)#howto
This media is not supported in your browser
VIEW IN TELEGRAM
Синтаксис if-let (и guard-let) в Swift 5.7 стал проще
New in Swift 5.7, the if-let syntax is even shorter 🔥 (it also works with guard-let)
New in Swift 5.7, the if-let syntax is even shorter 🔥 (it also works with guard-let)
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Именно так, начиная с xcode 13, можно поставить breakpoint внутри такого замыкания 👨🏻💻
You can use special tool - Column Breakpoints - to set a breakpoint inside that kind of closure 👨🏻💻
You can use special tool - Column Breakpoints - to set a breakpoint inside that kind of closure 👨🏻💻
This media is not supported in your browser
VIEW IN TELEGRAM
Варианты открытий кнопки меню в виде 🍔 Код здесь
Cooking hamburgers 🍔Code is here
#tasty #getsources
Cooking hamburgers 🍔
#tasty #getsources
Media is too big
VIEW IN TELEGRAM
Кастомизируем таб бар Код можно найти здесь
Customising and animating tab bar 🌊 using SwiftUICode is here
#howto #tasty #groovy #getsources
@swiftui_dev
Customising and animating tab bar 🌊 using SwiftUI
#howto #tasty #groovy #getsources
@swiftui_dev
В SwiftUI отсутствует метод
There is no
#howto
viewDidLoad()
, самый близкий по смыслу: onAppear
. Можно сэмулировать поведение viewDidLoad()
следующим модификатором.There is no
viewDidLoad()
equivalent method in SUI, the closest one is onAppear
. Actually we can simulate viewDidLoad()
behavior with custom modifier.#howto
This media is not supported in your browser
VIEW IN TELEGRAM
Анимация из рекламы 🍟 Код здесь
Fast food cafe animation (have seen in the commercial) 🍟Code is here
#tasty #groovy #getsources #trytodo
@swiftui_dev
Fast food cafe animation (have seen in the commercial) 🍟
#tasty #groovy #getsources #trytodo
@swiftui_dev
Разница в использовании async let.
The difference of using async let explained in a code example.
#readthis
The difference of using async let explained in a code example.
#readthis
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Очередной непростой челлендж 🤘🏻 Создадим лоадер 📶 Код здесь
Another pretty difficult challenge 🤘🏻 Developing loader 📶Code is here
#trytodo #tasty
@swiftui_dev
Another pretty difficult challenge 🤘🏻 Developing loader 📶
#trytodo #tasty
@swiftui_dev
This media is not supported in your browser
VIEW IN TELEGRAM
Необычные вертикальные часы 📶 ⌚️ Код здесь
Unusual vertical watches 📶 ⌚️Code is here
#tasty
@swiftui_dev
Unusual vertical watches 📶 ⌚️
#tasty
@swiftui_dev
This media is not supported in your browser
VIEW IN TELEGRAM
Навигация
Один из блоков вопросов на iOS - собеседовании - архитектура приложений. При этом почти в любой архитектуре вопросы навигации всегда находятся сбоку от обсуждения. Более того, для навигации разрабатывают свои паттерны. Одними из таких являются координатор и навигатор.
Начиная с SwiftUI 1.0 Apple практически на каждом WWDC рассказывает про работу с MVVM, как будто забывая про роутинг. Да, нам показали
Вместо
Будем честны, многие команды до сих пор используют роутинг на UIKit в проектах на SwiftUI. Даже те, кто пытались разобраться в
#switfpm #howto #getsources #groovy
Один из блоков вопросов на iOS - собеседовании - архитектура приложений. При этом почти в любой архитектуре вопросы навигации всегда находятся сбоку от обсуждения. Более того, для навигации разрабатывают свои паттерны. Одними из таких являются координатор и навигатор.
Начиная с SwiftUI 1.0 Apple практически на каждом WWDC рассказывает про работу с MVVM, как будто забывая про роутинг. Да, нам показали
NavigationView
, NavigationLink
, но не покидало ощущение, что Apple опять представили что-то промежуточное. Многие стали писать свои обертки над этим API, чтобы сделать работу удобнее. И наконец в iOS 16 Apple представили новое API навигации, которое так долго ждали. Вместо
NavigationView
(deprecated) теперь нужно использовать NavigationStack
. Экран для перехода будет определять модификатор navigationDestination
.Будем честны, многие команды до сих пор используют роутинг на UIKit в проектах на SwiftUI. Даже те, кто пытались разобраться в
NavigationView
, в конечном итоге возвращались обратно в UIKit. С появлением нового API навигации такой подход - поворот не туда. С другой стороны, новое API требует минимальный таргет у проекта iOS 16.0 . Что делать? Использовать бэкпорт! Можете создать свой тестовый проект, чтобы поработать с этой библиотекой. Мой сэмпл здесь.#switfpm #howto #getsources #groovy