您的位置:首页 > 移动开发 > Android开发

Android笔记之fragment之间相互传值

2014-03-18 22:14 495 查看
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;
}


Done!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: