从一个片段动态添加按钮到另一个片段

时间:2018-02-07 10:58:44

标签: java android android-fragments

我正在构建一个Android应用程序,我对它很新。我想知道是否有办法通过按下另一个片段上的按钮来动态地向片段添加按钮。例如,我有一个片段(A),它保存用户的输入并将其显示在片段(B)的列表视图中,因此我想为每个用户输入在片段(B)中添加一个按钮。

Fragment A

Popup window when fab is clicked (B)

2 个答案:

答案 0 :(得分:0)

目前还不清楚它是如何在应用中实现的。假设两个片段在活动中同时显示。在这种情况下,您可以使用FragmentManager来获取对另一个片段的引用:

((MyFragment) getFragmentManager().findFragmentById(...)).addButton(myArgs)

如果它们被放置在不同的活动中或者如果一个替换另一个活动,则需要使用参数Bundle在两者之间传递信息:

SecondFragment secondFragment = new SecondFragment();
Bundle args = new Bundle;
args.putString("name", "batman");
secondFragment.setArguments(args);
getFragmentManager().beginTransaction().replace(R.id.container, secondFragment).commit();

// later in SecondFragment#onViewCreated
button.setText(getArgments.getString("name"));

答案 1 :(得分:0)

片段之间的通信可通过" interface"进行。您通过链接片段的活动传递数据。在接收到相应数据后,片段B可以执行某些操作并刷新片段以显示结果。

有关执行的更多信息,请参阅以下链接 - passing data between fragments