You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio中如何在主Activity添加按钮跳转至其他主Activity?

Android 按钮跳转至不同Activity的当前可行实现方法

步骤1:确认目标Activity已在清单文件注册

首先要保证你的两个图表展示Activity已经在AndroidManifest.xml中注册,新Android Studio版本创建Activity时会自动添加,手动创建的话需补上:

<activity
    android:name=".ChartActivity1"
    android:exported="false" />
<activity
    android:name=".ChartActivity2"
    android:exported="false" />

exported="false"表示仅内部跳转,符合你的需求。

步骤2:在主页面布局添加按钮

打开主页面布局文件(比如activity_main.xml),添加两个按钮并设置唯一ID:

<Button
    android:id="@+id/btn_chart1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="查看图表1" />

<Button
    android:id="@+id/btn_chart2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="查看图表2" />

步骤3:在主Activity绑定点击事件并实现跳转

根据你使用的语言选择对应代码:

Java版本

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 获取按钮实例
        Button btnChart1 = findViewById(R.id.btn_chart1);
        Button btnChart2 = findViewById(R.id.btn_chart2);

        // 绑定图表1跳转事件
        btnChart1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, ChartActivity1.class);
                startActivity(intent);
            }
        });

        // 绑定图表2跳转事件
        btnChart2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, ChartActivity2.class);
                startActivity(intent);
            }
        });
    }
}

Kotlin版本

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        // 获取按钮实例
        val btnChart1 = findViewById<Button>(R.id.btn_chart1)
        val btnChart2 = findViewById<Button>(R.id.btn_chart2)

        // 绑定图表1跳转事件
        btnChart1.setOnClickListener {
            startActivity(Intent(this, ChartActivity1::class.java))
        }

        // 绑定图表2跳转事件
        btnChart2.setOnClickListener {
            startActivity(Intent(this, ChartActivity2::class.java))
        }
    }
}

注意事项

  • 确保ChartActivity1、ChartActivity2的类名和AndroidManifest.xml中注册的完全一致,大小写、包名都不能出错
  • 新项目默认使用AndroidX,Activity要继承AppCompatActivity,不要使用旧的Activity类
  • 如果需要给图表页面传递数据,可以在Intent中添加putExtra("键名", 数据),目标Activity通过intent.getXXXExtra("键名")获取(比如getStringExtra、getIntExtra等)

内容的提问来源于stack exchange,提问作者Michael Bradley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 23:55:25