相关疑难解决方法(0)

Dagger-Hilt:@ViewModelInject 没有注入 MyViewModel 并崩溃?

在探索 Dagger-Hilt 的 ViewModelInject 时,我遵循https://developer.android.com/training/dependency-injection/hilt-jetpack#viewmodels 中的示例

我尝试将 ViewModel 注入到我的活动中,如下所示

import android.app.Application
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.activity.viewModels
import androidx.hilt.Assisted
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.*
import androidx.savedstate.SavedStateRegistryOwner
import dagger.hilt.android.AndroidEntryPoint
import dagger.hilt.android.HiltAndroidApp
import kotlinx.android.synthetic.main.activity_main.*
import javax.inject.Inject
import javax.inject.Singleton

@HiltAndroidApp
class MainApplication: Application()

@AndroidEntryPoint
class MainActivity : AppCompatActivity() {

    private val viewModel: MyViewModel by viewModels()

    private val textDataObserver =
        Observer<String> { data -> text_view.text = data }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        viewModel.showTextDataNotifier.observe(this, textDataObserver)
        btn_fetch.setOnClickListener { viewModel.fetchValue() }
    }
} …
Run Code Online (Sandbox Code Playgroud)

android android-viewmodel dagger-hilt

12
推荐指数
3
解决办法
9932
查看次数

标签 统计

android ×1

android-viewmodel ×1

dagger-hilt ×1