Android 安卓实现页面相互跳转并相互传递参数

一、对于两个页面之间相互传值,跳转的时候我们使用 startActivityForResult(intent,0),而不是startActivity(intent) 这个方法

   第一个页面中在触发跳转的按钮中写上

            Intent intent=new Intent(MainActivity.this,SecondActivity.class);
            //将text框中的值传入
            intent.putExtra("name",text.getText().toString());
            //为了接受SecondActivity中的值,不用startAcitivity(intent)
            startActivityForResult(intent,1000);

            //两个动画之间的动画描述
            overridePendingTransition(R.anim.enter, R.anim.exit);

二、在第二个人Activity中回传数据采用setResult的方法,并在最后调用finish()

        Intent intent =getIntent();
        Bundle bundle= intent.getExtras();
        String Name=bundle.getString("name");
        SecondActivity.this.setTitle("欢迎光临"+Name);

        bt1.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {
            // TODO Auto-generated method stub
            Intent intent=new Intent(SecondActivity.this,MainActivity.class);
            //将text框中的值传入
            intent.putExtra("backname",text.getText().toString());
            setResult(1001, intent);
            //    结束当前这个Activity对象的生命
            finish();

            //SecondActivity.this.finish();
            }
        }); 

三、在第一个页面中重写onActivityResult方法,用来接收第二个Activity回传的数据

@Override
//重写了onAcitivityResult
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode == 1000 && resultCode == 1001)
    {
        String result = data.getStringExtra("backname");
        MainActivity.this.setTitle("收到"+result);
        Toast.makeText(getApplicationContext(), "取消", Toast.LENGTH_LONG).show();
    }
    else if(requestCode == 1000 && resultCode == 1002)
    {
        String result = data.getStringExtra("backname");
        MainActivity.this.setTitle("收到"+result);
        Toast.makeText(getApplicationContext(), "确定", Toast.LENGTH_SHORT).show();
    }
}

源码地址:http://download.csdn.net/download/qq_34793108/9836860

时间: 2024-08-28 06:10:20

Android 安卓实现页面相互跳转并相互传递参数的相关文章

微信小程序 页面跳转navigator与传递参数

页面之间跳转使用 navigator标签,wx.navigateTo ,wx.redirectTo 1.URL就是跳转的页面路径.上面代码中就是navigator目录下的navigator页面,title是参数. navigator下redirect属性是值在当前页打开.如果不加redirect就是跳转到新页面.都可以携带参数. 如果需要传多个参数, 用 & 链接即可 <navigator url="../navigator/navigator?title=我是navigate&q

Android Intent实现页面之间跳转

什么是IntentIntent可以理解为信使(意图)由Intent来协助完成Android各个组件之间的通讯Intent实现页面逐渐的跳转1.startActivity(inetnt)2.startActivityForResult(intent, requestCode); onAcitivtyResult(int requestCode, int resultCode, Intent data) setResult(resultCode, data); 先创建两个xml文件firstacti

android入门:activity之间跳转,并且回传参数

介绍: 两个activity进行跳转,在跳转过程中,将message由MainActivity传递到secondActivity,并且当secondActivity退回至MainActivity时,也传递消息给MainActivity. 首先是MainActivity的布局文件: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=

Html页面间跳转之数据传递

1.页面数据传递需要引入一个js文件,代码 UrlParm = function() { // url参数 var data, index; (function init() { data = []; index = {}; var u = window.location.search.substr(1); if (u != '') { var parms = decodeURIComponent(u).split('&'); for (var i = 0, len = parms.length

jqgrid如何在一个页面点击按钮后,传递参数到新页面

利用 Content/Scripts/dw-framework.js 中的AddTableMenu属性 <div class="Task" style="background-color: #E7191B" onclick="AddTabMenu('5756418a-13f7-46c2-8882-e9280c0e2e55', '/WemarineModule/Resume/Index', '简历管理', 'vcard.png',true)"

Android使用Intent让不同Activity切换,并传递参数

基本用法: 显式 Intent intent=new Intent(Activity甲.this,Activity乙.class); startActivity(intent); 传递参数 Intent intent=new Intent(Activity甲.this,Activity乙.class); intent.putExtra("参数名","要传的价值,可以是任何类型"); startActivity(intent); 获取参数 在目标Activity中 I

Android Studio 使用Intent实现页面的跳转(带参数)

不管是在APP,还是在网站中,页面之间的跳转都是很常见的,本文主要讲一下在APP中,如何通过Intent实现页面的跳转. 不带参数: 写在MainActivity页面的代码: 1 Intent intent = new Intent(); 2 intent.setClass(MainActivity.this, LoginActivity.class);//从MainActivity页面跳转至LoginActivity页面 3 this.startActivity(intent); 带参数: 写

2个JSP页面传递参数

跳转方式: window.location.href 参数传递方式:URL JSP1代码: <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> <script> function go() { //获取#dia的值 var s = document

WinForm页面之间(父页面传递参数给子页面)传递参数

方法一通过构造函数: 父页面(frmMain)点击btnQuery按钮进入子页面(frmListInfo),将数据库名(pdtDB)传递给子页面 父页面代码: private void btnQuery_Click(object sender, EventArgs e) { string pdtDB = FISTools.TAttributeCollection.ProductInfo["DatabaseName"].ToString();//数据库名 this.TopMost = f