18 lines
586 B
Kotlin
18 lines
586 B
Kotlin
|
|
package at.lockstep.player
|
||
|
|
|
||
|
|
import android.app.Application
|
||
|
|
import androidx.lifecycle.ViewModel
|
||
|
|
import androidx.lifecycle.ViewModelProvider
|
||
|
|
|
||
|
|
class LockstepViewModelFactory(
|
||
|
|
private val application: Application,
|
||
|
|
) : ViewModelProvider.Factory {
|
||
|
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||
|
|
if (modelClass.isAssignableFrom(LockstepViewModel::class.java)) {
|
||
|
|
@Suppress("UNCHECKED_CAST")
|
||
|
|
return LockstepViewModel(application) as T
|
||
|
|
}
|
||
|
|
throw IllegalArgumentException("Unknown ViewModel class: ${modelClass.name}")
|
||
|
|
}
|
||
|
|
}
|