Articles of mvvm

Как передать Retrofit onResponse Data на активность?

Я хочу передать модифицированный ответ на Activity, чтобы я мог установить данные в адаптере recycliewiew. Я не хочу использовать LiveData или RxJava. Здесь imageDetails – это список Json Object, и я хочу передать его в MainActivity. TrendingViewModel.kt class TrendingViewModel : ViewModel() { fun fetchGifs() { val apiService = GiphyApi().getClient()?.create(ApiInterface::class.java) val call = apiService?.getTrendingResults(20, Constants.API_KEY) var […]

Наблюдатель LiveData не срабатывает при обратном вызове

Наблюдатель LiveData не запускается, когда вызывается обратный вызов. Но если я поместил наблюдаемые данные в функцию и изменил данные, она будет работать отлично. Пожалуйста, какие-нибудь идеи, что бы это было? fun connect(address: String){ protocolARC.value = ProtocolARC() //OKAY!!!! bleManager.gattClient.onCreate(getApplication(), address, object : GattClient.OnCounterReadListener { override fun onCounterRead(value: Int) { Log.d("HURRAY", "read") protocolARC.value = ProtocolARC() //NOT OKAY????? […]

Как начать работу с viewmodel при успехе входа в шаблон mvvm

Привет, у меня есть одна активность LoginActivity.kt и LoginViewModel . Я LoginViewModel API login метод login LoginViewModel . Об успехе я хочу начать домашнюю работу. Каков правильный способ сделать это в MVVM-подходе? LoginViewModel.kt class LoginViewModel : BaseViewModel<LoginNavigator>(), AnkoLogger { val emailField = ObservableField<String>() private val email: String get() = emailField.get() val passwordField = ObservableField<String>() private […]

Как вызвать функцию baseactivity из viewmodel в android

Привет У меня есть LoginActivity и LoginViewModel и еще несколько классов. У меня есть showLoading и hideLoading в BaseActivity поэтому он может быть доступен из каждого действия. Я могу вызвать метод LoginActivity из LoginViewModel например mNavigator?.startForgotPasswordActivity() Я хочу назвать это из LoginViewModel затем, как это сделать, используя MVVM? или я иду с неправильным подходом. Пожалуйста, […]

Значение ObservableField не распространяется

Я новичок в mvvm и rxbinding. Я пытаюсь полностью отключить ViewModel от контекста android, используя RxJava и DataBinding. Когда I Unit-Test проверяет некоторый код ViewModel (т.е. проверка формы), мои ObservableFields не изменяют значение, и значение остается равным нулю. Минимальный пример моей модели ViewModel: class RegistrationViewModel(var validator: Validator) : ViewModel { val username: ObservableField<String> = ObservableField() […]

Чистая архитектура: ViewModel с несколькими UseCases на Android

Это скорее вопрос архитектуры, чем исправление ошибки. Предположим, что это приложение позволяет пользователям отмечать Bus и / или Bus Station в качестве фаворита. Мой вопрос в том, должен ли я иметь ViewModel с использованием UseCases или должен ли я использовать UseCase, который инкапсулирует текущую логику? Также для части вопроса я не совсем уверен, каким образом […]

`NoClassDefFoundError: android.databinding.DataBindingUtil` при запуске androidTest для фрагмента с ожиданием данных

Это касается следующего проекта библиотеки Android: https://github.com/RoRoche/kAndroidModular/tree/master/kAndroidModular/userrepos Я пытаюсь выполнить следующий модульный тест: https://github.com/RoRoche/kAndroidModular/blob/master/kAndroidModular/userrepos/src/androidTest/java/fr/guddy/kandroidmodular/userrepos/UserReposFragmentTest.kt Технический стек: Архитектура MVVM с компонентами архитектуры Android и привязкой данных изолированное тестирование фрагментов благодаря правилу проверки фрагмента

RecyclerView в заголовке другого RecyclerView (Mvvm ​​+ Databinding + Kotlin)

Я хочу создать экран, похожий на главный экран instagram: Структура этого экрана выглядит как (горизонтальная) recyclerView в заголовке другого RecyclerView (Вертикаль). Но я не уверен, это лучший (возможный) способ сделать это. Или что это лучший способ (подход) к этому? Я был бы рад, если бы вы могли поделиться со мной своими идеями об этом.

Как обрабатывать обработку ошибок в одном месте в rxjava с помощью обертки

Привет, я сделал CallbackWrapper для обработки ошибок в одном месте в rxjava . abstract class CallbackWrapper<T : BaseResponse> : DisposableObserver<T>() { protected abstract fun onSuccess(t: T) override fun onNext(t: T) { onSuccess(t) } override fun onError(e: Throwable) { when (e) { is HttpException -> { val responseBody = (e as HttpException).response().errorBody() responseBody?.let { // todo […]

Как установить функцию прослушивания кликов и передать значение поля edittext для просмотра модели с использованием привязки данных

Привет, Я пытаюсь использовать привязку данных и mvvm-архитектуру в своем приложении для Android. Я хочу добавить прослушиватель кликов, используя привязку данных в макете, и отправить значения имени пользователя и пароля edittext в модель представления и выполнить веб-службу и вызвать соответствующий метод LoginActivity такой как startHomeActivity() . Кто-нибудь знает, как это сделать или я принимаю неправильный […]