zoukankan      html  css  js  c++  java
  • Android开发系列之全局变量

      项目开发的过程中,可能会大量的使用全局变量,在android开发中,大多数人更偏向于使用application来保存全局变量。那么我们就先来了解下在android中,application究竟是什么?有什么作用?

      Application类是用来维护应用程序全局状态。我们可以提供自己的实现,并在AndroidManifest.xml文件的<application>标签中指出它的名字,这将导致在创建应用程序时去实例化我们自己的Application类。Android系统会为每个程序运行时创建一个Application类的对象且仅创建一个,所以Application可以说是单例模式的一个类。且Application对象的生命周期是整个程序中最长的,它的生命周期就等于这个程序的生命周期。因为它是全局唯一的,所以在不同的Activity,Service中获得的对象都是同一个对象。所以,通过Application来进行一些数据传递、数据共享、数据缓存等操作。

      首先创建继承自Application的MyApplication类,定义变量score,并创建get和set方法。

     1 package com.example.whs.myapplication;
     2 
     3 import android.app.Application;
     4 
     5 /**
     6  * Created by whs on 17/5/1.
     7  */
     8 
     9 public class MyApplication extends Application {
    10     private int score = 100;
    11 
    12     public int getScore() {
    13         return score;
    14     }
    15 
    16     public void setScore(int score) {
    17         this.score = score;
    18     }
    19 }

      下面就是如何使用我们创建的全局变量了,在MainActivity中,首先要获得MyApplication的对象,因为MyApplication继承自Application,所以使用getApplication()方法即可,然后可以调用MyApplication的get或set方法进行访问全局变量。

            MyApplication application = (MyApplication)this.getApplication();
            application.setScore(200);
            int score = application.getScore();    

      注意,在使用MyApplication之前需要修改AndroidManifest.xml文件的<application>中的android:name = ".MyApplication",这样就不会访问系统提供的application,而访问我们自己创建的。

  • 相关阅读:
    【百度地图API】让用户选择起点和终点的驾车导航
    JS解决通过按钮切换图片的问题
    JavaScript (JS)基础:DOM 浅析 (含数组Array、字符串String基本方法解析)
    JavaScript (JS)基础:ECMAScript 浅析 (含Math基本方法解析)
    感谢Sylvia的技术支持
    0904 存储过程、触发器、事务、视图、生成脚本
    0903 连接查询
    0901 子查询
    0831 模糊查询,排序查询,聚合函数,时间日期函数,数学函数,字符串函数
    0829 数据库的增删改查
  • 原文地址:https://www.cnblogs.com/whongs/p/6794508.html
Copyright © 2011-2022 走看看