Java 如何从片段中的意图获取变量?
在my MainActivity.java中,我有:Java 如何从片段中的意图获取变量?,java,android,eclipse,android-intent,android-fragments,Java,Android,Eclipse,Android Intent,Android Fragments,在my MainActivity.java中,我有: public class PlaceholderFragment extends Fragment { public PlaceholderFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { /
public class PlaceholderFragment extends Fragment {
public PlaceholderFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
//View rootView = inflater.inflate(R.layout.fragment_main, container, false);
LinearLayout ll = (LinearLayout )inflater.inflate(R.layout.fragment_main, container, false);
//EditText editText1 = (EditText) ll.findViewById(R.id.editText1);
//return rootView;
if (Global.globalInt==1){
EditText editText1 = (EditText)ll.findViewById(R.id.editText1);
Intent intent=getIntent();
String s=intent.getStringExtra("stringa");
editText1.setText(s,TextView.BufferType.EDITABLE);
Global.globalInt=0;
short y=9;
}
return ll;
}
}
但是我有一个错误:这个片段内部类应该是静态的com.example.test.MainActivity.PlaceholderFragment
如果我编写公共静态类占位符片段扩展片段{
我还有另一个错误:公共静态类占位符片段扩展了片段{
如何解决这个问题
谢谢一个片段可以通过调用getActivity来获得它的活动。然后你可以获得意图:getActivity.getIntent。片段不被意图调用,因此你无法从它们那里获得信息。你可以在执行片段事务时传递你需要的信息,或者在创建片段时通过getActivity链接到你的活动或者将其添加/替换到容器中,您可以通过setArgumentsBundle bundle函数调用设置片段的参数:
PlaceHolderFragment phFragment = new PlaceHolderFragment();
phFragment.setArguments(intent.getExtras());
getSupportFragmentManager().beginTransaction().replace(R.id.container, phFragment).addToBackStack(null).commit();
可能重复的