Ciao
sto studiando il ViewModel per passare un oggetto da un activity ad un altra activity o ad un fragment
ho creato una classe MainViewModel : ViewModel()
poi nella prima activity modifico l'oggetto Dossier e Numero
e nella seconda vado a recuperarli
Il valore dei due nella seconda activity é sempre Null
Cosa io sto sbagliando?
Grazie
sto studiando il ViewModel per passare un oggetto da un activity ad un altra activity o ad un fragment
ho creato una classe MainViewModel : ViewModel()
Codice:
class MainViewModel : ViewModel() {
private val numero= MutableLiveData<Int>()
fun setNumero(i : Int){
numero.value = i
}
fun getNumero() : LiveData<Int>
{
return numero
}
private val _dossier = MutableLiveData<Dossier>()
val dossier : LiveData<Dossier>
get() {
return _dossier
}
fun updateDossier(dos : Dossier){
_dossier.value = dos
}
}
poi nella prima activity modifico l'oggetto Dossier e Numero
Codice:
mainViewModel = ViewModelProvider(this)[MainViewModel::class.java]
val myDossier = Dossier()
myDossier.idDossier = "100000"
mainViewModel.updateDossier(myDossier)
mainViewModel.setNumero(10000)
e nella seconda vado a recuperarli
Codice:
val viewModel = ViewModelProvider(this)[MainViewModel::class.java]
var ddd = viewModel.dossier.value?.idDossier
println("idDossier "+ ddd)
val ccc = viewModel.getNumero()
println("numero " + ccc.value)
Il valore dei due nella seconda activity é sempre Null
Cosa io sto sbagliando?
Grazie