我在一个 fragment 中有一个数组列表,需要将其传递给另一个 fragment 。这两个 fragment 都属于同一个容器 Activity 。 这是我想出来的,但显然有问题。
这就是我从 Fragment1 发送数据的方式:
Bundle b=new Bundle();
b.putStringArrayList("Brands",allBrands);
Fragment fragment = new Fragment();
fragment.setArguments(b);
这就是我尝试在 Fragment2 接收数据的方式:
brands = getArguments().getStringArrayList("Brands");
我知道事情不是这样的。请帮帮我。 我检查了有关实现fragmentlistener 的问题。这与此无关。
最佳答案
fragment 之间的通信有几种不同的方式。
1) 创建接口(interface) 2) 共同的偏好 3)sqlite数据库
使用 1) 创建一个通用方法,两个 fragment 都可以读取该信息。
使用 2) 非常适合永久保存信息,直到覆盖或删除应用程序为止。
使用 3) 与第二个相同,但这取决于应用程序是否确实需要数据库。
关于java - 如何在属于同一容器 Activity 的两个 fragment 之间传递数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40635029/