fragment1中先获取fragment2中的控件,然后通过控件自己的方法得到值
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Fragment2 fragment2 = (Fragment2) getFragmentManager()
.findFragmentByTag("fragment2");
EditText editText = (EditText) fragment2.getView()
.findViewById(R.id.editText2);
Toast.makeText(getActivity(),
"--two->>" + editText.getText().toString(), 1).show();
}
});
LeftFragment通过Bundle 传值
RightFragment fragment = new RightFragment();
transaction = manager.beginTransaction();
transaction.replace(R.id.right, fragment, "fragment");
transaction.addToBackStack("fragment");
Bundle bundle = new Bundle();
bundle.putString("item", item);
fragment.setArguments(bundle);
transaction.commit();
RightFragment 接收参数
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
View view = inflater.inflate(R.layout.right, null);
TextView textView = (TextView) view.findViewById(R.id.textView1);
Bundle bundle = getArguments();
if (bundle != null) {
String item = bundle.getString("item");
textView.setText(item);
}
return view;
}