黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Android應用程序變量(Application級別)

系統 2346 0
Android應用程序開發中,有的時候我們在應用程序的任何一個地方都需要訪問一個全局變量,也就是在任何一個Activity中都可以訪問的變量。它不會因為Activity的生命周期結束而消失。要實現應用程序級的變量,我們可以通過Application這個類來實現。 首先,我們新建一個類HelloApplication繼承Android.app.Application類,然后在我們的類中增加一些變量。如下所示:
    
public class HelloApplication extends Application {
        private int globalVariable=1;

        public int getGlobalVariable() {
                return globalVariable;
        }

        public void setGlobalVariable(int globalVariable) {
                this.globalVariable = globalVariable;
        }
}

  

然后在應用程序配置文件AndroidManifest.xml中進行相應的配置,如下圖所示:

Android應用程序變量(Application級別)
完成之后,我們在應用程序的任何一個Activity中可以通過如下方法訪問我們的變量:
    ((HelloApplication)getApplication()).setGlobalVariable(10);
int valiable=((HelloApplication)getApplication()).getGlobalVariable();
  

怎么樣? 是不是很簡單? Application對象只有在應用程序中所有Activity都destroy時才會destrory,所有我們可以在任何一個Activity中訪問它。 那么為什么我們不能使用static 變量來存放全局變量呢?如下所示:
    
public class DataStoreClass {
        private static int globalVariable=1;
 
        public static int getGlobalVariable() {
                return globalVariable;
        }
 
        public static void setGlobalVariable(int newGlobalVariable) {
                globalVariable = newGlobalVariable;
        }
}

  

通過這種方式,DataStoreClass類可能會像Activity一樣在某些時候被android系統強行銷毀。所以在應用程序運行期間,DataStoreClass的值可能會丟失,或得到一些您不想要的值。 FROM: helloandroid
///////////////////////////////////////////////////////////////////////////////
//使用不羅嗦了,注意紅色的地方就可以了
首先:
    
import android.app.Application;

/**
 * 全局變量類,不需要用Bundle傳來傳去了
 * @author admin
 *
 */

public class BaseApplication extends Application {

	private String text = "My world";
	  
    public String getText() {
        return text;  
    }  
  
    public void setText(String text) {
    	this.text = text;  
    }  
    
}

  

其次:
<application android:icon="@drawable/icon" android:label="@string/app_name" android:name=".BaseApplication" >
...
</application>
再次:在activity中
BaseApplication app=null;
app = ((BaseApplication) getApplicationContext());
app.getText();

Android應用程序變量(Application級別)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論