我想定义可以被应用程序中的所有活动使用的常量。什么是最好的方法。
仅扩展Application是这样做的,因为我不想在所有类中声明相同的常量。
答案 0 :(得分:25)
我使用的有两种方法是有效的:
1)创建一个名为Constants或Globals的界面或任何你想要的界面。在该类中定义常量值,并使它们全部公开和最终。 (它们必须通过接口的定义公开,但也要确保它们也是最终的)。现在只需声明您的Activities和任何其他类来实现Constants接口。现在他们都可以访问相同的全局值。
2)创建一个类Constants而不是一个接口。将所有常量定义为public static final。现在,您可以在应用程序的任何类中通过Constants.VARIABLE_NAME引用所有常量值。
答案 1 :(得分:2)
简单的答案将变量声明为STATIC FINAL,并在所有活动中使用您的活动名称,即activity.constantname,例如:activity1.name
每当你使用它时它将采用相同的值,它也将全局更改..采用相同的值,无论你从哪个Activity访问它。
答案 2 :(得分:1)
我会使用一个将这些值保存为静态的类,并使用静态方法设置/获取它们。
答案 3 :(得分:0)
如果您想将所有 Activity 分配给您通过创建常量类声明的常量,那么, 将此行输入到您的 Constants 类中:
public static Class_Name Constant_name = null;
在活动中,将此行添加到 onCreate()
方法中:
Class_Name Constant_name = this;