Страницы

Поиск по вопросам

вторник, 21 мая 2019 г.

Модификация метода

Изначально у меня метод выглядит следующим образом:
override fun onListItemClick(itemIndex: Int, itemCode: String) { val data = adapter.getItem(itemIndex) if (data is TitleValueItem) { when (data.titleId) { R.string.v2_mobile_settings_language -> onLanguageClick() } } }
теперь я его решил преобразовать таким образом:
override fun onListItemClick(itemIndex: Int, itemCode: String) { when(adapter.getItem(itemIndex) as? TitleValueItem? ?: return) { R.string.some -> onLanguageClick() } }
И он мне ругается на строковый ресурс, что мол Int вместо TitleValueItem, не могу понять, что я забыл дописать то .


Ответ

Попробуйте следующим образом:
override fun onListItemClick(itemIndex: Int, itemCode: String) { when ((adapter.getItem(itemIndex) as? TitleValueItem)?.titleId ?: return) { R.string.v2_mobile_settings_language -> onLanguageClick() } }

Комментариев нет:

Отправить комментарий