Передача данных из ДиалогАлерт в активность на Kotlin Android

Попытался организовать через интерфейс ViewModel

class OneViewModel:ViewModel() {
    private val SM=MutableLiveData<Bundle?>()
    val SelectI:LiveData<Bundle?> get()=SM
    fun SI(intent:Bundle?){
        SM.value=intent
    }

в MainActive

 private val VM:OneViewModel by viewModels()
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        VM.SelectI.observe(this, Observer { intent->... })

в диалог Алерт

private val VM:OneViewModel by activityViewModels()
    override fun onCreateDialog(savedInstanceState:Bundle?):Dialog{
        return activity?.let{

            val builder=AlertDialog.Builder(it)
            val arg=arguments
            ...
            VM.SI(arg)

activityViewModels() и viewModels() упорно AndroidStudio подчеркивает красным. Не могу вообще понять причину проблемы. Брал пример кода, хоть и чуть изменил, с официального сайта https://developer.android.com/guide/fragments/communicate#kotlin


Ответы (0 шт):