Sobes.tech
Junior — Middle

როგორ შეიძლება მონაცემები შეინახოს ViewModel-ის შიგნით შემდგომი გამოყენებისთვის?

sobes.tech AI

პასუხი AI-სგან

ViewModel-ის შიგნით მონაცემების შენახვა და მათი განმეორებითი გამოყენება ჩვეულებრივ გამოიყენება ViewModel კლასის ველების მიერ, რომლებიც ინახავენ მდგომარეობას დაკავშირებული UI კომპონენტის სიცოცხლის ციკლის განმავლობაში.

თუ საჭიროა მონაცემების შენახვა პროცესის განადგურების დროს (მაგალითად, ეკრანის ბრუნვის ან აპლიკაციის დახურვის დროს), შეგიძლიათ გამოიყენოთ SavedStateHandle — სპეციალური ობიექტი, რომელიც საშუალებას აძლევს მდგომარეობის შენახვას და აღდგენას.

SavedStateHandle-ის გამოყენების მაგალითი:

class MyViewModel(private val state: SavedStateHandle) : ViewModel() {
    var userName: String?
        get() = state.get<String>("userName")
        set(value) = state.set("userName", value)
}

ამ გზით, მონაცემები ავტომატურად ინახება და აღდგება, რაც აუმჯობესებს მომხმარებლის გამოცდილებას და თავიდან აცილებს ინფორმაციის დაკარგვას.