Android全局变量

Android全局变量

如何创建全局变量,保持在应用程序生命周期周围的保留值,而不管哪个活动正在运行。



交互式爱情
浏览 672回答 3
3回答

阿晨1998

你可以扩大基地android.app.Application类并添加成员变量,如下所示:public&nbsp;class&nbsp;MyApplication&nbsp;extends&nbsp;Application&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;String&nbsp;someVariable; &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;String&nbsp;getSomeVariable()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;someVariable; &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;setSomeVariable(String&nbsp;someVariable)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.someVariable&nbsp;=&nbsp;someVariable; &nbsp;&nbsp;&nbsp;&nbsp;}}在Android清单中,必须声明实现android.app.Application的类(添加android:name=".MyApplication"属性到现有的应用程序标记):<application&nbsp; &nbsp;&nbsp;android:name=".MyApplication"&nbsp; &nbsp;&nbsp;android:icon="@drawable/icon"&nbsp; &nbsp;&nbsp;android:label="@string/app_name">然后,在您的活动中,您可以获得并设置如下变量://&nbsp;set((MyApplication)&nbsp;this.getApplication()).setSomeVariable("foo");//&nbsp;getString&nbsp;s&nbsp;=&nbsp;((MyApplication)&nbsp;this.getApplication()).getSomeVariable();

慕尼黑8549860

您可以使用Singleton Pattern就像这样:package&nbsp;com.ramps;public&nbsp;class&nbsp;MyProperties&nbsp;{private&nbsp;static&nbsp;MyProperties&nbsp;mInstance=&nbsp;null;public&nbsp;int&nbsp;someValueIWantToKeep; protected&nbsp;MyProperties(){}public&nbsp;static&nbsp;synchronized&nbsp;MyProperties&nbsp;getInstance()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(null&nbsp;==&nbsp;mInstance){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mInstance&nbsp;=&nbsp;new&nbsp;MyProperties(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;mInstance; &nbsp;&nbsp;&nbsp;&nbsp;}}在您的应用程序中,您可以这样访问您的独生子女:MyProperties.getInstance().someValueIWantToKeep

德玛西亚99

您可以使用应用程序首选项。只要您传递上下文对象,就可以从任何活动或代码中访问它们,并且它们对于使用它们的应用程序是私有的,因此您不需要担心公开应用程序特定的值,除非您处理路由设备。即便如此,您也可以使用散列或加密方案来保存值。此外,这些首选项存储在运行到下一个应用程序中。这里是一些您可以查看的代码示例。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android