Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
424 of 502 menu
◀ ▶

Метод edit

Метод edit класса SharedPreferences создаёт объект SharedPreferences.Editor для пакетной записи. Через editor вызывают putString и другие put-методы, затем apply или commit, чтобы сбросить изменения на диск.

Синтаксис

val editor = prefs.edit()

Пример

Давайте запишем строку через edit и apply:

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.getString("abcde", "") setContent { Text(text = res ?: "abcde") } } }

После apply в prefs сохранится "12345", на экране Text покажет эту строку.

Пример

Давайте сохраним две пары в одном editor:

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 editor = prefs.edit() editor.putString("abcde", "12345") editor.putString("12345", "abcde") editor.apply() val res = prefs.getString("abcde", "") setContent { Text(text = res ?: "abcde") } } }

В файле появятся обе пары, getString для "abcde" вернёт "12345".

Смотрите также

  • класс SharedPreferences.Editor,
    который возвращает edit
  • метод apply,
    которым сохраняют асинхронно
  • метод commit,
    которым сохраняют синхронно
  • метод getString,
    которым читают после записи
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить