生活随笔
收集整理的這篇文章主要介紹了
Android应用程序变量
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?
Android應(yīng)用程序開(kāi)發(fā)中,有的時(shí)候我們?cè)趹?yīng)用程序的任何一個(gè)地方都需要訪問(wèn)一個(gè)全局變量,也就是在任何一個(gè)Activity中都可以訪問(wèn)的變量。它不會(huì)因?yàn)锳ctivity的生命周期結(jié)束而消失。要實(shí)現(xiàn)應(yīng)用程序級(jí)的變量,我們可以通過(guò)Application這個(gè)類(lèi)來(lái)實(shí)現(xiàn)。 首先,我們新建一個(gè)類(lèi)HelloApplication繼承Android.app.Application類(lèi),然后在我們的類(lèi)中增加一些變量。如下所示:
| 01 | public?class?HelloApplication?extends?Application { |
| 02 | ????????private?int?globalVariable=1; |
| 04 | ????????public?int?getGlobalVariable() { |
| 05 | ????????????????return?globalVariable; |
| 08 | ????????public?void?setGlobalVariable(int?globalVariable) { |
| 09 | ????????????????this.globalVariable = globalVariable; |
?
然后在應(yīng)用程序配置文件AndroidManifest.xml中進(jìn)行相應(yīng)的配置,如下圖所示:完成之后,我們?cè)趹?yīng)用程序的任何一個(gè)Activity中可以通過(guò)如下方法訪問(wèn)我們的變量:
?
- ((HelloApplication)getApplication()).setGlobalVariable(10);
- int valiable=((HelloApplication)getApplication()).getGlobalVariable();
怎么樣? 是不是很簡(jiǎn)單? Application對(duì)象只有在應(yīng)用程序中所有Activity都destroy時(shí)才會(huì)destrory,所有我們可以在任何一個(gè)Activity中訪問(wèn)它。 那么為什么我們不能使用static 變量來(lái)存放全局變量呢?如下所示:
- public class DataStoreClass {
- private static int globalVariable=1;
- ?
- public static int getGlobalVariable() {
- return globalVariable;
- }
- public static void setGlobalVariable(int newGlobalVariable) {
- globalVariable = newGlobalVariable;
- }
- }
通過(guò)這種方式,DataStoreClass類(lèi)可能會(huì)像Activity一樣在某些時(shí)候被android系統(tǒng)強(qiáng)行銷(xiāo)毀。所以在應(yīng)用程序運(yùn)行期間,DataStoreClass的值可能會(huì)丟失,或得到一些您不想要的值。
?
轉(zhuǎn)載于:https://www.cnblogs.com/xyzlmn/archive/2010/11/27/3168237.html
總結(jié)
以上是生活随笔為你收集整理的Android应用程序变量的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。