всего подключится к UI?
Реактивно
LiveData. Mvvm же
можешь вроде еще посмотреть на AndroidViewModel, но вроде не рекоммендуеться ее юзать. Помню, что от нее можно избавиться, но как - не знаю, надо либо в доке искать, либо в гуголе
class AllViewModel(application: Application): AndroidViewModel(application) { private val repository = ShelfRepository() private val pRepository = ParamsRepository() val shelfList: MutableLiveData<Response<Shelf>> = MutableLiveData() val paramList: MutableLiveData<Response<Params>> = MutableLiveData() val alertList: MutableLiveData<Alert> = MutableLiveData() val infoList: MutableLiveData<Info> = MutableLiveData() val adList: MutableLiveData<Ads> = MutableLiveData() fun getShelf(){ viewModelScope.launch { val response = try { repository.getShelf() } catch (e: IOException){ Toast.makeText(getApplication(),getApplication<Application>().resources.getString(R.string.toastNetworkError), Toast.LENGTH_LONG ).show() return@launch } catch (e: HttpException){ Toast.makeText(getApplication(),getApplication<Application>().resources.getString(R.string.toastNetworkError), Toast.LENGTH_LONG ).show() return@launch } if(response.isSuccessful && response.body() != null){ shelfList.value = repository.getShelf() } } } все равно не показывает еррор
ля не кидай так код, читать сложно. Какая ошибка?
Ошибок то нет, тост не показыает просто
Я хз, у меня тост показывало с использованием targetSdk 31, может на старших сдк запретили это. Тосты с использованием не аппликейшн а активити контекста должны работать
Так не пытайся показать тост из вм, ты же не изменяешь view в вм, ты передаешь данные в активити/фрагмент, так и тут сделай
Согласен, только тогда я же не деляю проверку там соотвественно
Обсуждают сегодня