如何依次打开同一片段但具有不同数据的多个实例?
How to open multiple instances of the same fragment but with different data, one after the other?
我从 Activity
的模型 class 进行了几次 api 调用,在收到每个模型的响应后,我需要将数据提供给 Fragment
通过调用同一片段的多个实例一个接一个。
理想情况下,只有在前一个 Fragment
退出后(通过侦听器的响应)才会向下一个片段提供数据。
我找遍了所有地方都没有找到解决这个问题的办法。我曾尝试使用 AsyncTask 和 CountDownLatch 来阻止下一个 api 响应,然后再从初始 Fragment
获取操作响应,但在它只调用一个 Fragment
之后(我知道我应该有多少片段正在创建)并返回正常 Activity
视图。
对如何处理这个问题有什么想法吗?
有两种方法
- 为创建实例时传递数据的片段创建一个构造函数。
mFragment1 = new xFragment(dataA);
mFragment2 = new xFragment(dataB)
- 使用接口和实现将数据从 Activity 传递到。检查下面的link
https://developer.android.com/training/basics/fragments/communicating.html
我从 Activity
的模型 class 进行了几次 api 调用,在收到每个模型的响应后,我需要将数据提供给 Fragment
通过调用同一片段的多个实例一个接一个。
理想情况下,只有在前一个 Fragment
退出后(通过侦听器的响应)才会向下一个片段提供数据。
我找遍了所有地方都没有找到解决这个问题的办法。我曾尝试使用 AsyncTask 和 CountDownLatch 来阻止下一个 api 响应,然后再从初始 Fragment
获取操作响应,但在它只调用一个 Fragment
之后(我知道我应该有多少片段正在创建)并返回正常 Activity
视图。
对如何处理这个问题有什么想法吗?
有两种方法
- 为创建实例时传递数据的片段创建一个构造函数。
mFragment1 = new xFragment(dataA); mFragment2 = new xFragment(dataB)
- 使用接口和实现将数据从 Activity 传递到。检查下面的link
https://developer.android.com/training/basics/fragments/communicating.html