![](/img/trans.png)
[英]Why do I keep getting null when trying to pass a bundle from my activity to my fragment?
[英]Why is my data being displayed as null when trying to pass it from my activity to fragment?
我正在尝试将信息从我的活动传递到我的片段,但我遇到了一些问题。 我按照以前用户帖子中关于 stackoverflow 的指示执行了这些步骤。 但是我的数据没有显示。 有人能告诉我为什么我会遇到这个问题吗?
这是我活动中的代码
PennyStocksFragment fragment = new PennyStocksFragment();
Bundle bundle = new Bundle();
bundle.putString("SELECTEDSTRINGSECTOR", "something"); // Put anything what you want
fragment.setArguments(bundle);
FragmentManager fm = ((FilterActivity.this).getSupportFragmentManager());
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.fragment_container, fragment);
ft.commit();
这就是我尝试在我的片段中检索它的方式
String data = this.getArguments().getString("SELECTEDSTRINGSECTOR");
Log.i("tickerSymbolVar",data);
当您有一个Activity
时,此方法将起作用。 我认为您正在从另一个活动片段中获取数据? 如果我是正确的,那么首先将 go 传递给该活动,然后在活动中将数据传递给一个片段,然后在此处获取
像这样简单地将数据传递给片段的参数,并在构造函数的片段 class 中访问它:
PennyStocksFragment fragment = new PennyStocksFragment("your data");
bundle.putString("SELECTEDSTRINGSECTOR", "something");
FragmentManager fm = ((FilterActivity.this).getSupportFragmentManager());
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.fragment_container, fragment);
ft.commit();
并在片段的构造函数中访问它:
public PennyStocksFragment(String s){
String data = s;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.