Как получить аргумент от конструктора? - PullRequest
2 голосов
/ 05 ноября 2019
class AlmatyJobViewModel(application: Application) : AndroidViewModel(application){   

 fun clearSuggestionsHistory(){
            SearchRecentSuggestions(application, MySuggestionsProvider.AUTHORITY, MySuggestionsProvider.MODE)
                .clearHistory()
        }
}

Неразрешенная ссылка: приложение

Как получить приложение из конструктора, если я хочу использовать его в этом методе?

1 Ответ

3 голосов
/ 05 ноября 2019

Если вы добавите private val application, у вас будут исключения во время компиляции, такие как

Случайное переопределение: следующие объявления имеют одинаковую подпись JVM

Итак, чтобы исправитьэто, вы только должны позвонить getApplication(), где вам требуется.

SearchRecentSuggestions(getApplication(), MySuggestionsProvider.AUTHORITY, MySuggestionsProvider.MODE).clearHistory()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...