Android RecyclerView Adapter ViewHolder 中获取 Activity

文章目录

    之前记录过如何在 Fragment 中获取父级 Activity,这次发现需要在 RecyclerView Adapter ViewHolder 中获取 Activity。

    简单来说,就是:

    get Context from the view

    例如,ViewHolder 中包含一个 text view 用来显示姓名,可以借此获取 context,从而得到 Activity.

    (binding.name.context as ItemDetailHostActivity).stopSomething()
    

    实际应用场景

    • 例如,在各种嵌套的 RecyclerView Adapter 中想访问 ViewModel 中的全局变量,就可以通过获取父级 Activity,再获取 ViewModel 的方式