小编Kan*_*nan的帖子

Lateinit 属性数据尚未初始化

使用 Retrofit2 和 rxjava2 未在 Recyclerview 中设置 Gson Convertable 数据,然后通过其订阅给出错误:

UninitializedPropertyAccessException: lateinit property data has not been initialized
Run Code Online (Sandbox Code Playgroud)

通过retrofit2和rxjava2解析JSON数据。解析GSON数据转换GSon时,rxjava2订阅数据然后给出lateinit属性错误并且它没有在recyclerview中设置。

MainActivity.kt

class Company : AppCompatActivity() {


    internal lateinit var api : APIInterface

    var compositeDisposable = CompositeDisposable()



    internal lateinit var companyDialog : Dialog

    internal lateinit var adapter: CompanyAdapter

    internal lateinit var data : List<Company>

    internal lateinit var rvCompany : RecyclerView

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_company)

        companyDialog = Dialog(this)

        //companyAdapter = CompanyAdapter()


        btnSelectCompany.setOnClickListener{
            showCompanyPopupView()
        }



    }

    fun showCompanyPopupView(){
        companyDialog.setContentView(R.layout.compny_popup_screen)

         rvCompany  = …
Run Code Online (Sandbox Code Playgroud)

kotlin android-recyclerview retrofit2 rx-java2

5
推荐指数
1
解决办法
2万
查看次数