ViewModel یک کلاس از Architecture Components در اندروید است که برای مدیریت و ذخیره‌ی داده‌ها و اطلاعات مربوط به رابط کاربری (UI) به کار می‌رود. ViewModel اطلاعات را بین فعالیت‌ها (Activities) یا فرگمنت‌ها (Fragments) یک برنامه اندروید به اشتراک می‌گذارد و از از دست رفتن داده‌ها در اثر تغییرات ترتیب چرخه حیات این کامپوننت‌ها جلوگیری می‌کند.

در زیر یک آموزش ساده برای استفاده از ViewModel در برنامه‌نویسی اندروید با استفاده از Kotlin آورده شده است.

افزودن وابستگی‌ها: 

برای استفاده از ViewModel، ابتدا به فایل build.gradle ماژول شما این وابستگی را اضافه کنید:

implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1"

ایجاد ViewModel: 

ابتدا یک ViewModel بسازید. به عنوان مثال، فرض کنید که ما یک ViewModel برای مدیریت تعداد یک عدد داریم:

// MyViewModel.kt
import androidx.lifecycle.ViewModel

class MyViewModel : ViewModel() {
    private var count: Int = 0

    fun getCount(): Int {
        return count
    }

    fun incrementCount() {
        count++
    }
}

 

اتصال ViewModel به فعالیت (Activity) یا فرگمنت (Fragment): 

در فعالیت یا فرگمنت خود، یک نمونه از ViewModel را ایجاد کنید و به طور معمول آن را به همراه فعالیت یا فرگمنت خود نگه دارید:

// MyActivity.kt
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.activity.viewModels
import kotlinx.android.synthetic.main.activity_main.*

class MyActivity : AppCompatActivity() {

    private val viewModel: MyViewModel by viewModels()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        // استفاده از ViewModel
        textViewCount.text = viewModel.getCount().toString()

        buttonIncrement.setOnClickListener {
            viewModel.incrementCount()
            textViewCount.text = viewModel.getCount().toString()
        }
    }
}

در این مثال، viewModels از مخزن ViewModel استفاده می‌کند و یک نمونه از MyViewModel را ایجاد می‌کند. هر فعالیت یا فرگمنت که از viewModels استفاده می‌کند، یک نمونه جدید از ViewModel ایجاد نخواهد کرد و هر جا از MyViewModel یاد کنیم، همان نمونه ایجاد شده در ابتدا استفاده می‌شود.

تکمیل: این تازه شروع است، و شما می‌توانید ViewModel را برای مدیریت داده‌های بیشتر و انجام عملیات بیزینس پیچیده‌تر به کار ببرید. همچنین، می‌توانید از LiveData برای اطلاع‌رسانی تغییرات در ViewModel به فعالیت یا فرگمنت استفاده کنید.

مقالات مرتبط

نرم افزار مدیریت باسکول ( هوشمند )
نرم افزار مدیریت باسکول ( هوشمند )

سیستم مدیریت باسکول بارگو – هوشمندسازی توزین در کارخانه‌ها و معادن پشتیبانی از حالت آفلاین و آنلاین حتی در شرایط قطع اینترنت، سیستم بدون وقفه به کار خود ادامه داده و پس از برقراری ارتباط، اطلاعات را به‌طور کامل با سرور آنلاین همگام‌سازی می‌کند. قابلیت اتصال به انواع باسکول‌ها سازگاری کامل با باسکول‌های دیجیتال و آنالوگ، بدون نیاز به تغییرات سخت‌افزاری. تعاریف و تنظیمات پیشرفته امکان تعریف کالاها، مشتریان، رانندگان، وسایل نقلیه و اپراتورها با دسترسی‌های متفاوت. گزارش‌گیری دقیق و متنوع گزارشات وزنی روزانه، هفتگی و ماهانه گزارشات مالی و حسابداری گزارشات سفارشی بر اساس بازه زمانی و نوع کالا رابط کاربری ساده و کاربرپسند طراحی به گونه‌ای که اپراتور باسکول بتواند در کمترین زمان عملیات توزین را انجام دهد. هوش مصنوعی و پلاک‌خوان خودکار شناسایی لحظه‌ای پلاک خودرو هنگام ورود به باسکول ذخیره تصویر خودرو و پلاک در سیستم کاهش خطا و جلوگیری از ورود اطلاعات نادرست

3 ماه قبل نوشته شده

دیدگاهی برای این مطلب ثبت نشده است.