Android 如何在Kotlin中的RecyclerView.Adapter中使用SharedReferences?
这是对黑暗模式的需要 我需要从RecyclerView.Adapter中的SharedReferences加载colorMode变量,但IDE将“this”或“application”标记为错误 在哪里可以插入这些代码而不出现任何错误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
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)
最好您应该将上下文传递给适配器,将其强制转换为一个活动,并使用它代替此活动