我正在尝试保存用户的语言首选项,因此我有一个带有语言 setter 和 getter 的首选项类,以及一个单独的语言 Activity ,用户可以在其中实际选择他们想要的语言。
从这个语言 Activity 中,我想使用 setter 在首选项类中设置用户选择的语言首选项。这是首选项类:
class Preferences (context: Context) {
val PREFS_FILENAME = "artour.prefs"
val LANGUAGE = "language"
val prefs: SharedPreferences = context.getSharedPreferences(PREFS_FILENAME, Context.MODE_PRIVATE);
fun getLang() : String {
return prefs.getString(LANGUAGE, "english")
}
public fun setLang(lang:String) {
val editor = prefs.edit()
editor.putString(LANGUAGE, lang)
editor.apply()
}
}
我将如何从语言 Activity 中运行 setLang 方法?
最佳答案
如果我遗漏了这个问题中的任何内容,我现在不知道,但只需这样做:
val preferences = Preferences(this)
preferences.setLang("it is that easy")
在您的 Activity 类中的任何函数中。
它所做的是创建一个对象 (val preferences = Preferences()
) 然后调用它的方法 (preferences.setLang("this is a string")
).
尽管如此,请确保使用实际的语言标识符而不是随机字符串。
关于android - 如何在 Android Studio [Kotlin] 中运行一个类中另一个类的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49661382/