两个Activity间的交互startActivityForReuselt(intent,int)

两个Activity间的交互startActivityForReuselt(intent,int);

   

OneActivit界面:


点击跳转到第二个Activity按钮时跳转到界面2,并在控制台输出由界面1跳转到界面2

 

TwoAcrivity界面:



点击返回1,返回到oneactivity,并在控制台输出one

点击返回2,返回到oneactivity,并在控制台输出two

 

TherrActivity界面:



点击返回,返回到oneactivity,并在控制台输出threeActicity

 

//界面代码就省略了

OneActivity主要代码:

    public void go_twoActivity(View v)

    {

        Strings="由界面1跳转到界面2";

        Intentit=newIntent(this,TwoActivity.class);

//携带向界面2传的值,并设置标记码为1,与后面onActivityResult()方法中的requestCode相对应

        it.putExtra("toTwoActivity",s);

        startActivityForResult(it,1);

 }

 

    public void go_threeActivity(Viewv){

        Intentit=newIntent(this,ThreeActivity.class);

//跳转到界面3,并设置标记码为2

        startActivityForResult(it,2);

    }

    @Override

    protected void onActivityResult(int requestCode,int resultCode, Intent

intent) {

//      super.onActivityResult(requestCode,resultCode, arg2);

 

//根据requestCode判断由哪个界面返回的,与上面startActivityForResult(intent,int);中的第二//个参数相对应

        switch (requestCode) {

        case 1:

 

//由界面2跳转过来并判断由哪个按钮返回的,该回调方法中的第二个参数resultCodeTwoActivity中的//setResult(10,intent)方法的第一个参数相对应

            switch(resultCode) {

            case10:

                Bundleb= intent.getExtras();

                Strings=b.getString("back");

                System.out.println(s);

                break;

            case11:

                Bundlec= intent.getExtras();

                Strings1=c.getString("backtwo");

                System.out.println(s1);

                break;

            }

            break;

                       

        case 2:

            System.out.println("threeActicity");

            break;           

        }

 

TwoActivity主要代码:

protected voidonCreate(Bundle savedInstanceState) {

        // TODO Auto-generated method stub

        super.onCreate(savedInstanceState);

        setContentView(R.layout.two);

        Intentit=getIntent();

        Bundles=it.getExtras();

        Stringstr=s.getString("toTwoActivity");

        System.out.println(str);

    } 

    public void fanhui(View v){

        Intent intent = new Intent();

        intent.putExtra("back","one");

        setResult(10,intent);   

        this.finish();

    }

    public void fanhuitwo(View v){

    Intentit = newIntent();

    it.putExtra("backtwo","two");

    setResult(11,it);

    this.finish();

    }

 

ThreeActivity主要代码:

    public void fan_hui(View v){

        this.finish();

    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值