189 8069 5689

AndroidActivity之间跳转、传值总结-创新互联

Activity之间跳转要使用Intent类来传递数据。实例化Intent对象后,可以设置跳转到的Activity,不传递任何数据,也可以通过Intent封装数据传递。

创新互联建站于2013年创立,是专业互联网技术服务公司,拥有项目网站设计制作、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元六安做网站,已为上家服务,为六安各地企业和个人服务,联系电话:028-86922220

    Intent有六个构造方法,可自行选择,常用的有Intent(action)、Intent(Context,Class)和空参数构造。

   可以直接使用startActivity(intent)和startActivityForResult(intent,int requestCode)进行跳转,requestCode须不小于0。

   也可以封装好数据后再跳转。要封装数据,可直接使用Intent类的方法putExtra(String  key, value),类似于Map;也可先封装Bundle对象,再调用putExtras(bundle)封装。

    在目标Activity中可以使用getIntent()方法获得Intent对象,再通过intent.getXXXExtra(key)得到对应的值或getExtras()得到Bundle对象,再提取出值即可。

    如使用第二种跳转方式,可在目标Activity中调用setResult(int resultCode,intent)方法,该Activity结束后会回到第一个Activity。一般自己调用finish()方法结束自己。返回后会直接回调onActivityResult(requestCode, resultCode, intent)方法,通过code来验证Activity,通过intent传值。

    使用startActivityForResult跳转返回后,不管在目标Activity中使用getIntent()方法还是重新new Intent对象返回,requestCode和resultCode对于两个Activity都是唯一的,确定的一一对应。

    下面贴出一些代码:

第一个Activity主要代码:

= (EditText)findViewById(R.id.);
    = (Button)findViewById(R.id.);

    .setOnClickListener(View.OnClickListener() {
        onClick(View view) {
            Intent intent = Intent(MainActivity., Main2Activity.);
            intent.putExtra(, .getText().toString());
            startActivityForResult(intent, );

        }
    });
}

onActivityResult(requestCode, resultCode, Intent data) {
    .onActivityResult(requestCode, resultCode, data);
    (requestCode==){
//if(resultCode == 0x002){

        Toast.(, data.getStringExtra(), Toast.).show();
    }
    Log.(, );
}

目标Activity主要代码:

= (EditText)findViewById(R.id.);
= (Button)findViewById(R.id.);

String str = getIntent().getStringExtra();
.setText(str);
String str2 = str+;
.setOnClickListener(View.OnClickListener() {
    onClick(View view) {
        Intent intent = Intent(Main2Activity., MainActivity.);
        intent.putExtra(, );

        setResult(, intent);
        finish();
    }
});
如有错误之处,欢迎指正。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前标题:AndroidActivity之间跳转、传值总结-创新互联
本文来源:http://cdxtjz.cn/article/heggo.html

其他资讯