İçeriğe geç

SwiftUI ile @EnvironmentObject kullanımı

Merhabalar bu yazımda SwiftUI ile @EnvironmentObject kullanımından bahsedeceğim.

Daha önceki yazımda bahsettiğim @ObservedObject yazısının devamı şekilinde düşünebilirsiniz. iOS ile uygulamalarımızda splash ekran içerisinde bazen Singleton yapıda sınıflar yazarak kullanıcının bazı bilgilerini uygulama boyunca hafızada tutması için yazarız. Buda bize tekrarlı servis istekleri kullanmaktan kurtarır.

Bu işlemi SwiftUI ile birlikte Viewler arası yapmak istediğinizde @EnvironmentObject kullanmamız gerekir. Bu işlem için uygulama SceneDelegate içerisinde yazdığımız shared sınıfı eklememiz gerekir.

Aşağıda yazdığım örneği inceleyerek devam edelim.

İlk önce basit bir model oluşturalım.

Daha sonrasında yazdığımız sınıfı SceneDelegate içerisinde ilgili View’e eklemeniz gerekir.

Bu işlemi gerçekleştirdikten sonra View içerisinde nesnemize kullanalım.

Burada yazdığım örnekte ContentView sayfasında kullanıcının giriş yapıp, yapmadığını kontrol ediyoruz. Bunun için diğer bir sayfaya present olup, UserViewModel üzerinde değişiklik yapacağız.

@EnvironmentObject nesnesi üzerinde yapılacak tüm değişiklikler diğer sayfalardan dinlenip, kullanılabilinir.

 

Tarih:SwiftUI

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

© 2019 Kenan Atmaca