简单的fragment传值

来源:互联网 发布:ae软件要钱吗 编辑:程序博客网 时间:2024/05/18 00:41

//mainactivity


public class MainActivity extends FragmentActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Fragment1 fragment1=new Fragment1();
        getSupportFragmentManager().beginTransaction().replace(R.id.fl, fragment1).commit();
    }

}


//第一个fragment

public class Fragment1 extends Fragment{
    private View inflate;
    private EditText fragment1_ed;
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        inflate = inflater.inflate(R.layout.activity_fragment1, null);
        return inflate;
    }
    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        fragment1_ed = (EditText) inflate.findViewById(R.id.fragment1_ed);
        Button fragment1_bt=(Button) inflate.findViewById(R.id.fragment1_bt);
        fragment1_bt.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View v) {
               String str=fragment1_ed.getText().toString().trim();
               Fragment2 fragment2=Fragment2.fangfa(str);
               getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.fl, fragment2).commit();
            }
        });
    }
}

//第二个fragment


public class Fragment2 extends Fragment {

    private View inflate2;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        inflate2 = inflater.inflate(R.layout.activity_fragment2, null);
        return inflate2;
    }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        TextView fragment2_tv = (TextView) inflate2
                .findViewById(R.id.fragment2_tv);
        Bundle bundle = getArguments();
        String str = bundle.getString("name");
        fragment2_tv.setText(str);

    }

    public static Fragment2 fangfa(String str) {
        Fragment2 fragment2 = new Fragment2();
        Bundle bundle = new Bundle();
        bundle.putString("name", str);
        fragment2.setArguments(bundle);
        return fragment2;

    }
}



1 0
原创粉丝点击