android - Android Studio - 整个项目中的全局变量?
问题描述
因此,我正在制作一款手机游戏,并且在整个项目中进行多项活动。我一直在使用 Intents 将变量从一个活动传递到下一个活动,然后将这些变量传递回其他活动。因此,例如,如果 Activity1 中有一个值 x = 5,则该值将传递给 Activity2。然后,如果玩家在 Activity2 中将 x 更改为 6,则此信息将传递回 Activity1。
这种方法有效,但似乎效率很低。有没有办法为整个项目创建一个全局变量,这样当我在一个活动中更改它时,它会在所有活动中更改?
谢谢
解决方案
很简单,创建一个单例,将变量存储在那里,然后让您的活动从单例中的变量读取和写入。
如何声明单例:
科特林:
object MySingleton {
var myVariable: Int = 0
}
爪哇:
public class MySingleton {
private int myVariable = 0;
// Getter/setter
private static MySingleton instance;
public static MySingleton getInstance() {
if (instance == null)
instance = new MySingleton();
return instance;
}
private MySingleton() { }
}
推荐阅读
- javascript - 条件语句中的 JS 提升没有给出预期的输出
- javascript - RxJS 6 获取 Observable 数组的过滤列表
- eclipse - 在 Eclipse 中将无限限制为当前项目
- azure - CLI v2.0.1-beta.28 proxies.json 问题
- c++ - Gmock 参数化测试运行两次
- php - MYSQL从url中选择数据?
- javascript - 查找 2 个数组之间的唯一标识符
- python - 如何在python中从txt文件中读取数据
- json - 从json文件中提取值
- reporting-services - 向 SSRS 2016 添加自定义安全性后,在站点设置安全性中添加用户/域给出错误