Метод contains
Метод contains класса
SharedPreferences
возвращает true, если пара
с таким key уже лежит в файле,
и false, если записи нет.
Перед чтением через getString
им иногда проверяют, задан ли ключ.
Синтаксис
val res = prefs.contains("abcde")
Параметры
| Параметр | Описание |
|---|---|
key |
Имя пары, которую ищут в файле. |
Пример
Давайте проверим ключ после putString:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val prefs = getSharedPreferences("prefs", MODE_PRIVATE)
prefs.edit().putString("abcde", "12345").apply()
val res = prefs.contains("abcde")
setContent {
Text(text = if (res) "12345" else "abcde")
}
}
}
contains вернёт true,
на экране Text покажет "12345".
Пример
Давайте проверим ключ до любой записи:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val prefs = getSharedPreferences("prefs", MODE_PRIVATE)
val res = prefs.contains("abcde")
setContent {
Text(text = if (res) "12345" else "abcde")
}
}
}
Для нового файла contains вернёт false,
на экране будет "abcde".
Смотрите также
-
метод
getString,
которым читают значение по ключу -
метод
edit,
которым начинают запись -
метод
remove,
которым удаляют ключ из файла -
метод
getSharedPreferences,
которым открывают prefs