Android 如何在Kotlin中的RecyclerView.Adapter中使用SharedReferences?

Android 如何在Kotlin中的RecyclerView.Adapter中使用SharedReferences?,android,kotlin,sharedpreferences,android-recyclerview,Android,Kotlin,Sharedpreferences,Android Recyclerview,这是对黑暗模式的需要 我需要从RecyclerView.Adapter中的SharedReferences加载colorMode变量,但IDE将“this”或“application”标记为错误 在哪里可以插入这些代码而不出现任何错误 val preferences = *this*.getSharedPreferences("MyPreferences", Context.MODE_PRIVATE) val editor = preferences.edit() var

这是对黑暗模式的需要

我需要从RecyclerView.Adapter中的SharedReferences加载colorMode变量,但IDE将“this”或“application”标记为错误

在哪里可以插入这些代码而不出现任何错误

    val preferences = *this*.getSharedPreferences("MyPreferences", Context.MODE_PRIVATE)
    val editor = preferences.edit()
    var colorMode = false
    colorMode = preferences.getBoolean("ThemeMode", false)

指的是适配器,而不是
上下文

您应该在应用程序的
上下文中调用
getSharedReferences()

如果此代码位于
视图支架内
,请使用此代码:

val preferences = view.getContext().getSharedPreferences("MyPreferences", Context.MODE_PRIVATE)

最好

您应该将上下文传递给适配器,将其强制转换为一个活动,并使用它代替此活动