Метод remove
Метод remove у
SharedPreferences.Editor
помечает ключ key
для удаления из файла prefs.
После apply или commit
contains
вернёт false для этого ключа.
Синтаксис
editor.remove("abcde")
Параметры
| Параметр | Описание |
|---|---|
key |
Имя пары, которую нужно убрать. |
Пример
Давайте запишем строку и сразу удалим её:
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()
prefs.edit().remove("abcde").apply()
val res = prefs.contains("abcde")
setContent {
Text(text = if (res) "12345" else "abcde")
}
}
}
Ключ "abcde" исчезнет из prefs,
на экране Text покажет "abcde".
Пример
Давайте удалим один ключ и оставим другой:
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")
.putString("12345", "abcde")
.apply()
prefs.edit().remove("abcde").apply()
val res = prefs.getString("12345", "")
setContent {
Text(text = res ?: "abcde")
}
}
}
Пара "12345" останется в prefs,
на экране будет "abcde".