Несовпадение типов Kotlin с обобщениями в общих настройках

Я начинаю писать приложение для Android, используя Kotlin, и наткнулся на проблему, когда пытался написать универсальную функцию для обработки чтения из SharedPreferences

введите описание изображения здесь

Я читал о ! запись в документах Kotlin, но я до сих пор не знаю, как решить эту проблему.

Вот код на случай, если кто-то захочет скопировать его:

fun <T> read(context: Context, key: String, defValue: T?): T? {
    return when (defValue) {
        is String? -> getPreferences(context).getString(key, defValue)
        is Int -> getPreferences(context).getInt(key, defValue)
        else -> null
    }
}

0 ответов

Другие вопросы по тегам