Size: a a a

2021 October 08

I

Ivan in SwiftBook
кто подскажет почему у меня не появляется колор-пикер на месте colorlit?
источник

ММ

Михаил Морозов... in SwiftBook
Привет, подскажите как повзаимодействовать с фоткой при выборе через PHPickerViewController как это было в UIImagePickerController при установке свойства allowsEditing = true ?
источник

ج

جاخنجر ✵ in SwiftBook
++++
источник

BL

Boris Larionov in SwiftBook
Подскажите пожалуйста, как байндить экземляр класса (в моём случае NotesManager) в SwiftUI?  При попытке выдаёт такую ошибку.
источник

BL

Boris Larionov in SwiftBook
источник

GK

Guitar Kitty in SwiftBook
Для ObservableObject тебе нужно создать StateObject
источник

GK

Guitar Kitty in SwiftBook
Чтобы пробрасывать его дальше по приложению используй ObservedObject или EnvironmentObject, в зависимости количества представлений, в которые тебе нужно этот объект передать
источник

BL

Boris Larionov in SwiftBook
Сам экземпляр, который хочу передать StateObject. Но в том View, где хочу забайндить там эта ошибка и с ObservedObject и EnvironmentObject.
источник

GK

Guitar Kitty in SwiftBook
покажи представление, с которого ты переходишь на этот экран
источник

BL

Boris Larionov in SwiftBook
Вот, хочу передать этот notesManager в новый SwiftUI файл
источник

BL

Boris Larionov in SwiftBook
источник

BL

Boris Larionov in SwiftBook
источник

BL

Boris Larionov in SwiftBook
Я убрал private, в том View возле init ошибка пропала. Осталась эта
источник

GK

Guitar Kitty in SwiftBook
чтобы передать environment object, тебе нужно повесить на скоуп, модификатор .environmentObject(notesManager), в инициализатор передавать не нужно его
источник

GK

Guitar Kitty in SwiftBook
получилось?
источник

BL

Boris Larionov in SwiftBook
Да! Огромное спасибо ❤️
источник

GK

Guitar Kitty in SwiftBook
источник

GK

Guitar Kitty in SwiftBook
если ты хочешь передавать в инциализатор этот объект, то у тебя должен быть ObservedObject там, куда ты хочешь его передавать, Observed - точечная передача через инциализатор, Environment - можно передавать сразу в весь скоуп, где у тебя находятся вьюхи, не затрагивая каждый инициализатор отдельно
источник

BL

Boris Larionov in SwiftBook
Хорошо, я запомнил. Подскажи пожалуйста, что значит скоуп? Я примерно понимаю, но хочу точно
источник

GK

Guitar Kitty in SwiftBook
Ну я так про область видимости представлений, типа у тебя есть VStack, там есть 3  других представления, куда нужно передать твой StateObject, ты можешь повесить на VStack модификатор .environmentObject и в таком случае ты сможешь создать экземпляр этого StateObject в каждом из 3-х представлений, без передачи его в иницализатор, просто пишешь @EnvironmentObject SomeName: ViewModel, а если у тебя будет экземпляр ObservedObject, то тебе нужно будет передавать StateObject  через инициализатор того представления, где ты объявишь Observed, надеюсь, понятно объяснил
источник