【问题标题】:Getting values from one fragment on another从一个片段获取另一个片段的值
【发布时间】:2022-01-20 15:47:06
【问题描述】:

我正在开发一个由 3 个片段组成的应用程序。第一个片段上有三个 numberDecimal|numberSigned EditTexts 和一个按钮,当用户单击按钮时,我需要在第三个片段上从它们获取值(作为构建图形的浮点变量),我该怎么做?

编辑:当用户单击按钮时,我需要将浮点变量从一个片段发送到另一个片段

另一个编辑: code with error

the errors

【问题讨论】:

  • 此适配器仅用于向您的活动显示和添加片段。你的问题与它无关。无论如何,您是否在 Stackoverflow 上搜索过您的问题的解决方案?
  • 这是我的第一个带有片段的应用程序,所以我真的不知道应该在这个问题中添加哪些代码。我需要将一个浮点变量从一个片段发送到另一个片段,但我不知道如何。我在 Stackoverflow 中搜索过,还是不明白
  • 尝试在捆绑包上调用 putFloat("float_key" , 5f ) 而不是 putExtra。 putExtra 是在 Intent 而不是 Bundle 上调用的。
  • 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: java android android-fragments


【解决方案1】:

您在此处发布的只是您的适配器类,但如果我理解您的问题,您希望传递数据。

当您单击按钮时,将转到带有某些数据的第三个片段

点击

ThirdFragment thirdFragment = new ThirdFragment ();
Bundle graph = new Bundle();
 graph.putExtra("x", editTextX.getText().toString() + "f");
 graph.putExtra("y", editTextY.getText().toString() +"f"));
 graph.putExtra("z", editTextZ.getText().toString() + "f");
thirdFragment.setArguments(graph);

//Inflate the fragment
getFragmentManager().beginTransaction().add(R.id.container, thirdFragment).commit();

在第三个片段接收时

float x = getArguments().getFloat("x");
float y = getArguments().getFloat("y");
float z = getArguments().getFloat("z");

【讨论】:

  • OP 从不提及任何活动,只提及片段
  • 感谢您的回答,但这对片段有用吗?
  • 我需要将值从一个片段发送到另一个片段,而不是活动
  • 更新了你的答案
  • 我收到此错误:无法解析 'Bundle' 中的方法 'putExtra'
猜你喜欢
  • 2020-05-31
  • 2016-09-30
  • 1970-01-01
  • 2017-03-25
  • 1970-01-01
  • 1970-01-01
  • 2016-06-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多