Android:Activity之间跳转和参数传递

一个activity就好比一个网页,此文章讲解怎样创建一个activity并且实现跳转!

一、学习创建Activity

1、新建一个java类,右击src目录,选择new-->class,新的activity需要继承Activity类

2、需要复写onCreate()

例子:

package com.example.testsend;

import android.app.Activity;
import android.os.Bundle;

public class MainActivity2 extends Activity{
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.newtest);     
    }
    
}

3、配置到AndroidManifext.xml,在application下创建一个新的activity,如果跟MainActivity同一目录,可以只写.name,否则加包名,不过建议写全。

<activity android:name="com.example.testsend.MainActivity2">
           </activity>

如果希望新的activity作为首页展示,把intent-filter那一块搬过来就可以了。

二、Activity之间的通信

 1、打开一个新的Activity,不传递参数

<Button 
        android:id="@+id/btnOpen"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="打开新页面"
        android:onClick="OpenNew"
        />

 

点击按钮触发的方法:

MainActivity.java设置方法

public void OpenNew(View v){
    //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
    Intent intent =new Intent(MainActivity.this,MainActivity2.class);
    startActivity(intent);       
    }

2、打开新的Activity并传递参数

MainActivity.java传递参数

 

public void OpenNew(View v){
    //新建一个显式意图,第一个参数为当前Activity类对象,第二个参数为你要打开的Activity类
    Intent intent =new Intent(MainActivity.this,MainActivity2.class);
    
    //用Bundle携带数据
    Bundle bundle=new Bundle();
    //传递name参数为tinyphp
    bundle.putString("name", "tinyphp");
    intent.putExtras(bundle);
    
    startActivity(intent);        
    }

MainActivity2.java接收参数

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.newtest);   
        
        //新页面接收数据
        Bundle bundle = this.getIntent().getExtras();
        //接收name值
        String name = bundle.getString("name");
       Log.i("获取到的name值为",name);     
    }

 

接收成功:

转载于:https://my.oschina.net/gxs2012/blog/895183

好的,针对你的问题,我可以为你提供以下的解答。 在 Android 中,我们可以通过 Intent 对象来实现 Activity 之间跳转。下面是一个简单的示例代码,演示了如何从一个 Activity 跳转到另一个 Activity,并且在跳转后传递一些参数: ``` // 在第一个 Activity 中,设置跳转 Intent 并传递参数 Intent intent = new Intent(FirstActivity.this, SecondActivity.class); intent.putExtra("paramName", paramValue); startActivityForResult(intent, requestCode); // 在第二个 Activity 中,获取传递过来的参数并返回结果 Intent resultIntent = new Intent(); resultIntent.putExtra("resultName", resultValue); setResult(Activity.RESULT_OK, resultIntent); finish(); ``` 以上代码中,我们通过 `Intent.putExtra()` 方法在第一个 Activity 中传递了一个参数,并且通过 `startActivityForResult()` 方法启动了第二个 Activity。在第二个 Activity 中,我们可以通过 `getIntent()` 方法获取传递过来的参数,并且在处理完业务逻辑之后,通过 `setResult()` 方法设置返回结果,然后调用 `finish()` 方法关闭当前 Activity 并返回结果。 需要注意的是,我们在启动第二个 Activity 的时候使用了 `startActivityForResult()` 方法而不是 `startActivity()` 方法,这是因为我们需要在第二个 Activity 中返回结果给第一个 Activity。在第一个 Activity 中,我们需要重写 `onActivityResult()` 方法来接收第二个 Activity 返回的结果: ``` @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == requestCode && resultCode == RESULT_OK) { String result = data.getStringExtra("resultName"); // 处理返回结果 } } ``` 以上就是 AndroidActivity 之间跳转并且传递参数的基本方法。希望能够对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值