lifecycle-viewmodel-ktx
全部标签 我有一个问题与MVVM的正确设计和架构有关,而不是与编码本身有关。在我的项目中,我遇到了ViewModel正在提供数据的情况,这些数据后来在RecyclerView.Adapter中用于创建正确的View。但是我想知道这是否也是正确的(从正确的“做事方式”POV)如果一些数据以id的形式提供以便从Room或外部服务器进一步获取?例如,在onBindViewHolder期间使用一些带有observe()的LiveData在成功加载时更新某些字段。 最佳答案 在View中获取数据是不行的。它违背了MVVM的初衷,尤其是AndroidJe
我正在开发一个带有6个tabs的ViewPager,其中它只有一个fragmentTimesListFragment根据传递给TimesListFragment的参数,它调用api例如;科学、技术、旅游等我已经为我的应用关注了Google的GithubBrowserSample我有TimesListFragment->TimesViewModel->TimesRepository有6个选项卡,当我点击api时,所有选项卡显示相同的结果,如果是最后一个argumentStoriesPagerAdapter.ktclassStoriesPagerAdapter(fragmentManage
运行具有依赖项'androidx.lifecycle:lifecycle-extensions:2.1.0-alpha03'和'androidx.lifecycle:lifecycle-viewmodel:2.1.0-的应用程序时出错alpha03'在装有Android4.4的设备上。在Android6设备上运行良好应用因错误而崩溃java.lang.RuntimeException:Unabletogetproviderandroidx.lifecycle.ProcessLifecycleOwnerInitializer:java.lang.ClassNotFoundExceptio
如何开始使用KTXforandroid? 最佳答案 AndroidKTX-一组扩展,旨在使为Android编写Kotlin代码更加简洁、惯用和愉快。AndroidKTX在Android框架和支持库之上提供了一个很好的API层,让您编写Kotlin代码更加自然。例如,在Kotlin中将字符串解析为URI(传统方式)我们有valuri=Uri.parse(myUriString)通过使用KTX,我们可以将上面的代码简化为valuri=myUriString.toUri()你可以引用这篇博客了解更多详情https://android-de
我正在尝试在Android中使用新的架构组件,到目前为止它运行良好。但是,我遇到了架构问题。我有一个MainActivity,它承载了一堆fragment,A、B和C。到目前为止,每次我需要我的ViewModel(VM)时,我都会在MainActivity的上下文中获取它(如下所示:MyViewModelvm=ViewModelProviders.of(getActivity()).get(MyViewModel.类);)。现在考虑一下:fragmentC让用户选择一些值,并将其写入VM。fragmentA使用fragmentC让用户选择值,然后A直接从VM并将其显示在其UI中。fra
Google表示不可能从ViewModel观察LiveData:[...]HoweverViewModelobjectsmustneverobservechangestolifecycle-awareobservables,suchasLiveDataobjects.[...]我会在ViewModel中处理repo.login()结果并通知UI认为这两个SingleLiveEvents,这可能吗?classRepository{//....//funlogin(user:String,password:String):LiveData{/*...*/}}classLoginViewMo
我正在使用Support.V7.NotificationCompat显示通知。单击此通知时,我想导航到ViewModel。当我尝试使用MvxViewModelRequest显示ViewModel时,我传递给ViewModel的导航参数不起作用,但当我像这样使用ShowViewModel时它有效:ShowViewModel(new{id=existingModification.Id});这是ViewModelInit方法。当我使用ShowViewModel导航时,Guid具有正确的值。当我使用MvxViewModelRequest导航时,Guid始终具有值Guid.Empty(全为0)
有一种称为MVVM(模型-View-View模型)的设计模式,其中使用View模型作为View的抽象。ViewModel应该向View公开数据流并与Model的数据交互。但是有一个ViewModelAndroid框架中的类。问题:Android的ViewModel与MVVM模式中的View模型有关吗? 最佳答案 它们是不同的。Android所指的ViewModel就是。TheViewModelclassisdesignedtostoreandmanageUI-relateddatasothatthedatasurvivesconfi
在ViewModel中获取AndroidRoomDAO的最佳方式是什么?基于paginglibrary例如我写了这个ViewModel:classMyViewModel(myDao:MyDao):ViewModel(){valdata=myDao.get().create(/*initialloadposition*/0,PagedList.Config.Builder().setPageSize(50).setPrefetchDistance(50).build())}然后我尝试获取一个实例valviewModel=ViewModelProviders.of(this).get(My
在AndroidComponents中,我可以将应用程序类作为ViewModel的所有者,以便我在多个Activity中使用它吗?还是没有走动?ViewModelProviders.of(applicationclassnotactivity).get(MyViewModel.class); 最佳答案 Application不是LifecycleOwner,因此您不能将它用作ViewModel的作用域。 关于跨Activity的Android组件ViewModel,我们在StackOve