当前位置: 首页 > 知识库问答 >
问题:

如何使用ViewModel在片段之间进行通信?[副本]

龚安民
2023-03-14

我有一个带有“x”个片段的视图寻呼机,第一个是“HomeFragment”:它包含2个下拉列表(微调器)

其他片段(FragmentA、FragmentB、FragmentC等)的UI会根据这些微调器的选定项值进行更改

因此,问题是:如何从“HomeFragmet”中的微调器传递此选定项值以用于其他片段?

共有1个答案

何和惬
2023-03-14

尝试将选定的值传递到主片段...

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            Fragment fragment = new HomeFragment();
            Bundle bundle = new Bundle();
           bundle.putString("Key",spinner.getSelectedItem().toString());
            fragment.setArguments(bundle);
            getSupportFragmentManager().beginTransaction()
                    .replace(R.id.fragment_frame, fragment, fragment.getClass().getSimpleName()).addToBackStack(null).commit();

        }

        @Override
        public void onNothingSelected(AdapterView<?> adapterView) {

        }
    });

在家庭片段中,以这种方式获取价值。。

下面的代码调用onCreate方法或onCreateView方法。。

 Bundle bundle = this.getArguments();
    if (bundle != null) {
        int i = bundle.getString("key", "defaulValue");
    }
 类似资料:
  • 我正在尝试使用数据绑定在Kotlin中实现MVVM arcitecture。代码只是将空白屏幕显示为输出。有人能帮我弄清楚为什么在执行这个程序时没有对服务器的调用吗。 我尝试了这个和类似的链接来解决这个问题。 我的代码如下: 主要活动 } CvRepository类 } }

  • 我有一个片段和一个对话框片段,我想在它们之间进行通信:将数据从片段发送到对话框片段,并将数据从对话框片段发送到片段 我阅读了有关和的信息,但我不明白如何正确使用它们向/从发送/接收数据。 任何帮助?

  • 我有一个包含不同片段的导航抽屉(每个项目显示一个片段),我想把数据从一个片段传递到另一个片段(我只有一个活动包含一个导航抽屉,其中有一个片段列表)。 我尝试了很多解决方案(捆绑和意向),但我不能解决我的问题。 有谁能帮我一个忙吗。 这是我的第一个片段A:package com.tutecentral.navigationdrawer; /***一个简单的{@link android.support

  • 我正试图做到这一点:http://android-er.blogspot.com/2012/06/communication-between-fragments-in.html只不过我用的是一台碎纸机 我有一个有两个片段的活动 FragmentA有一个编辑文本和一个按钮,FragmentB有一个文本视图 现在我想要的是,每当我在编辑文本中输入一些内容并单击按钮时,我的文本视图中就会出现一些内容。

  • 问题内容: 我试图在两个活动之间建立监听器接口。将开始。如果发生了某些事件,它将通知它。问题是我正在使用Intent开始新活动,那么Act1如何将自己分配为Act2接口的侦听器? Act1.java Act2.java 注意: 请不要建议我使用片段。我现在要使用活动。 问题答案: 您是否考虑过使用LocalBroadcastManager? 在Act1的onCreate中: 在Act1的onDes

  • 问题内容: 需要专家意见,我应该如何构造这个问题。我有一个自定义方法 process_filter ,它驻留在一个片段中,因为它需要访问私有和该片段。 在处理过程中,此片段将访问一个,并且在其中我需要使用back process_filter 方法 基本上,这里是结构: MyFragment.java MyAdapter.java 问题答案: 创建一个从适配器到片段的接口。 在适配器中创建接口,并