草庐IT

viewModels

全部标签

android - 如何通过viewModels获取viewModel? ( fragment -ktx)

我正在为Activity及其所有fragment使用SingleviewModel。所以要初始化viewmodel如果必须在所有fragment的onActivityCreated中编写此设置代码overridefunonActivityCreated(savedInstanceState:Bundle?){super.onActivityCreated(savedInstanceState)viewModel=ViewModelProviders.of(activity!!).get(NoteViewModel::class.java)}我正在浏览AndroidKTX扩展页面:(re

安卓架构组件 : bind to ViewModel

我对使用新架构组件时数据绑定(bind)的工作方式感到有点困惑。假设我有一个简单的Activity,其中包含一个列表、一个ProgressBar和一个TextView。Activity应该负责控制所有View的状态,但是ViewModel应该保存数据和逻辑。例如,我的Activity现在看起来像这样:@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);binding=DataBindingUtil.setContentView(this,R.layout.

android - Android JetPack 的共享 ViewModel 生命周期

文档https://developer.android.com/topic/libraries/architecture/viewmodel#sharing描述了我们如何在不同的Fragment之间共享同一个ViewModel。我的单个Activity应用程序中有一些复杂的页面,其中包含容器和选项卡fragment。每个这样的页面都有自己的ViewModel,它应该与所有包含的fragment共享。这里的关键技巧是使用Activity而不是Fragment来保存我的ViewModel。问题是我的Activity可以有多个页面和自己的模型,并且一直保持特定页面的View模型是设备资源的浪

android - Android MVVM 中的服务和 ViewModel——它们如何交互?

我使用Android架构中的ViewModels已经有一段时间了,并且遵守从不将ViewModel暴露给Context/Views(AndroidFramework/UI)的规定。然而,最近我遇到了一个有趣的问题。制作定时器应用程序时,当定时器启动时,服务会在运行定时器的后台运行。这样,当应用程序关闭时,计时器仍然在通知栏的前台运行,直到所有计时器都停止。但是,这意味着我的所有Timer对象和状态都包含在此服务中。我的UI需要在每次更新时更新,但模型不一定需要更新ViewModels如何适应这种情况?Activity是否应该每次都接收LocalBroadcasts并通知ViewMode

android - MVVM 在 MvxBindableListView 中交叉更改 ViewModel

我的Android应用程序有点问题,我不知道如何使用MVVMCross解决它。这是我的模型publicclassArticle{stringLabel{get;set;}stringRemark{get;set;}}我的View模型publicclassArticleViewModel:MvxViewModel{publicListArticles;....}我的layout.axml......我的问题来了,“article_rowlayout”......名为“MyTest”的“单击”命令链接到MvxBindableListView提供的项目上。换句话说,单击在我的模型“文章”中搜

android - MVVM - 实现谷歌地图并在 ViewModel 中拥有上下文?

所以我正在学习MVVM,喜欢它。但是..到目前为止我的问题如下:使用MVVM实现谷歌地图。(我是在Activity上还是在ViewModel上做?我只能在Activity上实现它..)尤其是CONTEXT..可以像下面这样传递吗?I'musingthislibrary.这是我的View模型:publicclassDashboardViewModelimplementsViewModel{publicfinalObservableFielddashButton=newObservableField("");publicfinalActiononRandomSearch;privateCo

android - 架构组件 ViewModel 与 savedInstanceState 包

尝试了解使用ViewModel保留Activity或fragment的某些状态并使用savedInstanceState包保存它们的区别。给人的印象是,在配置更改等情况下,当操作系统销毁Activity/fragment时,ViewModel实例会保持Activity状态,这样当操作系统重新创建Activity/fragment时,Activity/fragment可以从仍然有效的ViewModel实例中获取数据。它是否适用于最小化应用程序并重新打开它?做了一些测试,似乎最小化应用程序并重新打开应用程序,操作系统将重新创建Activity/fragment,其中onCreate()中的

java - 扩展 BaseObservable 的 ViewModel 和 Android ViewModel 类有什么区别?

我目前正在研究MVVM架构模式,但我对扩展BaseObservable的自定义ViewModel类和Android本身提供的另一个ViewModel感到困惑。 最佳答案 您的自定义ViewModel只是您View的数据持有者,因为它绑定(bind)到您的View(并且因为它是一个Observable对象),所以它可以通知View有关数据的更改。但是,它不知道方向更改(View旋转)等配置更改,因此,在这种情况下,程序员应该保存和恢复数据examplehere.另一方面,Android提供的ViewModel知道这些配置更改,因此它的

android - 使用 onSaveInstanceState() 和 ViewModel 保存 Activity 的状态

阅读本文后,我对ViewModels留下了一些疑问:https://developer.android.com/topic/libraries/architecture/saving-states这里说您应该结合使用ViewModel进行配置更改(如屏幕旋转),并在所有其他情况下使用onSaveInstanceState()Activity被销毁,然后重新创建以保存UI状态。我的问题是我们如何知道调用onCreate(Bundle)时恢复状态的方法——我应该使用ViewModel还是应该使用接收到的包作为参数?当配置改变时,onSaveInstanceState()也会被调用,显然on

Android 架构组件 ViewModel 上下文

我正在研究谷歌的架构组件来为我的应用程序实现ViewModel和LiveData,官方文档说:Note:SincetheViewModeloutlivesspecificactivityandfragmentinstantiations,itshouldneverreferenceaView,oranyclassthatmayholdareferencetotheactivitycontext.IftheViewModelneedstheApplicationcontext(forexample,tofindasystemservice),itcanextendtheAndroidVi