Hirdetés

Új hozzászólás Aktív témák

  • Kutyauto

    csendes tag

    válasz bandi0000 #5476 üzenetére

    Hát igen, össze vissza alakulnak ki a dolgok, nem lehet mindig lépésről lépésre haladni.
    Sokszor kell visszamenni, átdolgozni,kipróbálni más megoldást is... Korábban is így boldogultam, csak talán egyszerűbb volt az az eszköz, meg nem voltak olyan berögződött elképzeléseim mint most.

    Végül kipróbáltam a ViewModeles megoldást is.

    Az initjébe betettem a lekérdezést így :
    init {
    var setup: Setup? = null
    try {
    viewModelScope.launch(Dispatchers.IO) {
    setup = AppDatabase.getInstance(mycontext).gradeDao().getsetup()
    if (setup != null) {
    this.pnSounds = setup!!.voice
    this.pnBuzz = setup!!.buzzer
    this.ActualMatrix = setup!!.matrix
    this.ActualLevel = setup!!.level
    }
    }
    } catch (e: Exception) {
    Log.e("loadSetup hiba", e.message!!)
    }


    }

    És így jó. Így is csak a viewModelScope.launch(Dispatchers.IO) megoldással megy.

    A lifecycleScope nem tudom miből jönne (**), nem tudtam beimportolni sehogy. De a scope és launch szavak alapján a

    LifecycleCoroutineScope.launch() -ot
    meg ezt a
    viewModelScope.launch() -ot találtam. Utóbbit választottam, mert nem kért importot és maradt is mert így működik.

    (**)
    Ezeket az alábbi Gradle sorokat beletettem, de sehogy sem akarta...
    def lifecycle_version = "2.2.0"
    implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"

    Köszi a tippet.

Új hozzászólás Aktív témák