android: activity之间的跳转和传递参数
一,新建一个activity


修改一个新activity的背景色:在activity_mylist.xml中增加一行:
android:background="#FF6600"
二,跳转到第二个activity
1,只跳转不传参数
//给按钮增加点击事件
Button myButton = findViewById(R.id.apibutton);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 处理点击事件
// 创建Intent对象,指定要启动的Activity组件名(完整路径名)
Intent intent = new Intent(MainActivity.this, MylistActivity.class);
// 启动目标Activity
startActivity(intent);
}
});
2,传递参数:
在第一个activity中:
//给按钮增加点击事件
Button myButton = findViewById(R.id.apibutton);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 处理点击事件
// 创建Intent对象,指定要启动的Activity组件名(完整路径名)
Intent intent = new Intent(MainActivity.this, MylistActivity.class);
// 增加要传递的参数
intent.putExtra("name", "王富贵"); // 传递字符串数据
intent.putExtra("id", 25); // 传递整型数据
// 启动目标Activity
startActivity(intent);
}
});
新activity中接收参数
package com.example.okdemo1.activity;
import android.content.Intent;
import android.os.Bundle;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import com.example.okdemo1.R;
public class MylistActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
EdgeToEdge.enable(this);
setContentView(R.layout.activity_mylist);
//开始接收参数
Intent intent = getIntent();
String name = intent.getStringExtra("name");
System.out.println("接收到参数:name:"+name);
int id = intent.getIntExtra("id", 0);
System.out.println("接收到参数:id:"+id);
}
}
测试效果:

浙公网安备 33010602011771号