首页 > 解决方案 > 如何将数据从对话片段发送到 Viewpager 中的所有片段?

问题描述

我遇到了从对话片段向viewpager中的所有片段发送数据的问题,一个简单的int类型。我有一个同时托管对话片段和查看器的活动。我知道如何使用对话片段中定义的接口将数据从对话片段发送到活动,并在活动本身中实现它。我在想也许它与 onAttach 方法有关,但我不确定。我觉得我在这里忽略了一个简单的解决方案。请帮忙!谢谢!

标签: javaandroiddialogandroid-viewpagerfragment

解决方案


您可以创建一个包含 LiveData 对象(保存您的 int)的共享视图模型。当您想将数据从对话框片段发送到视图分页器中的片段时,您可以在实时数据对象上调用 setValue 方法,并在每个视图分页器片段中设置观察者,当 LiveData 对象更改时通知这些观察者。如果这对您来说是新的,那么我建议您阅读 Android 架构组件文档https://developer.android.com/topic/libraries/architecture/viewmodel https://developer.android.com/topic/libraries/architecture/livedata 我希望这会有所帮助:)


推荐阅读