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

Android Studio中如何将一个变量传递至两个新Activity?

当然可以实现!

完全没问题,你可以通过Intent把同一个shareInt变量传递给任意多个不同的Activity,核心思路就是针对每个目标Activity分别创建Intent实例,然后把当前最新的shareInt值放入每个Intent中,再根据用户的选择启动对应的Activity。

下面给你具体的实现示例:

1. 在源Activity中处理用户选择并传递变量

假设你有两个按钮对应两个选项,分别用来启动第二个和第三个Activity,代码可以这么写:

// 假设这是你的源Activity,shareInt是实时更新的int变量
// 按钮1:启动第二个Activity
btnOption1.setOnClickListener {
    val intentToSecond = Intent(this, SecondActivity::class.java)
    intentToSecond.putExtra("KEY_SHARE_INT", shareInt) // 放入当前最新的shareInt值
    startActivity(intentToSecond)
}

// 按钮2:启动第三个Activity
btnOption2.setOnClickListener {
    val intentToThird = Intent(this, ThirdActivity::class.java)
    intentToThird.putExtra("KEY_SHARE_INT", shareInt) // 同样放入当前最新的shareInt值
    startActivity(intentToThird)
}

2. 在目标Activity中接收变量

不管是第二个还是第三个Activity,都可以用同样的方式获取传递过来的shareInt:

// 在SecondActivity或ThirdActivity的onCreate方法中
val receivedInt = intent.getIntExtra("KEY_SHARE_INT", 0) // 第二个参数是默认值,防止没有传值的情况
// 接下来就可以使用receivedInt了

额外小提示

如果你的shareInt是需要在多个页面实时同步更新的(比如用户在某个页面修改了它,其他页面也要立刻看到最新值),除了Intent传递,还可以考虑用ViewModel或者单例类来管理这个变量,这样不用每次启动Activity都手动传值,会更优雅。但如果只是在用户选择选项时传递当前的最新值,上面的Intent方法完全够用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 07:57:55