ZMY_fragment传值

//xml
    <RelativeLayout
        android:id="@+id/rl"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </RelativeLayout>


【main】

public class MainActivity extends FragmentActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // 得到Fragment管理者
        FragmentManager fragmentManager = getSupportFragmentManager();

        // 开启事务
        FragmentTransaction beginTransaction = fragmentManager
                .beginTransaction();
        // 得到两个fragment对象
        F1 f1 = new F1();
        F2 f2 = new F2();

        //添加Fragment到指定布局,并指定tag
        beginTransaction.add(R.id.rl, f1,"f1").add(R.id.rl, f2,"f2").hide(f2).commit();

    }

}

【f1】


/**
 *
 */
package com.bwei.day_10____fragment_;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;

/**
 * @author WJL
 *
 */
public class F1 extends Fragment {

    private EditText et_name;
    private EditText et_pass;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View view = View.inflate(getActivity(), R.layout.f1, null);

        et_name = (EditText) view.findViewById(R.id.et_name);
        et_pass = (EditText) view.findViewById(R.id.et_pass);

        Button button = (Button) view.findViewById(R.id.button);

        button.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO
                // 得到输入框的内容
                String name = et_name.getText().toString().trim();
                String pass = et_pass.getText().toString().trim();

                // 得到fragment管理者
                FragmentManager supportFragmentManager = getActivity()
                        .getSupportFragmentManager();
                // 通过tag得到F2对象,这个tag是添加时写好的
                F2 f2 = (F2) supportFragmentManager.findFragmentByTag("f2");
                // 通过对象调变量,并赋值
                f2.name = name;
                f2.pass = pass;
                // 得到事务
                FragmentTransaction beginTransaction = supportFragmentManager
                        .beginTransaction();

                beginTransaction.show(f2).hide(F1.this).commit();


            }
        });

        return view;
    }
}


【f2】


/**
 *
 */
package com.bwei.day_10____fragment_;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

/**
 * @author WJL
 *
 */
public class F2 extends Fragment {

    public String name;
    public String pass;

    private TextView tv_name;
    private TextView tv_pass;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View view = View.inflate(getActivity(), R.layout.f2, null);
        tv_name = (TextView) view.findViewById(R.id.tv_name);
        tv_pass = (TextView) view.findViewById(R.id.tv_pass);

        return view;
    }

    // 判断当前Fragment是否隐藏
    @Override
    public void onHiddenChanged(boolean hidden) {
//显示的话
        if (!hidden) {

//tv_name修改为f1中更改发的name和pass

            tv_name.setText(name);
            tv_pass.setText(pass);

        }

    }


}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值