方法一:通过单实例:
public
class
Globals{
private
static
Globals instance;
//
Global variable
private
int
data;
//
Restrict the constructor from being instantiated
private
Globals(){}
public
void
setData(
int
d){
this
.data=d;
}
public
int
getData(){
return
this
.data;
}
public
static
synchronized
Globals getInstance(){
if
(instance==
null
){
instance=
new
Globals();
}
return
instance;
}
}
在其他类中需要使用时:
Globals
g = Globals.getInstance();
g.setData(
100
);
....
int
data=g.getData();
方法二:继承application
a) Create a new class that extends Application.
1
2
3
4
5
6
7
8
9
10
11
|
public
class
Globals extends
Application{ private
int
data= 200 ; public
int
getData(){ return
this .data; } public
void
setData( int
d){ this .data=d; } } |
b) Add the class to the AndroidManifest file as an attribute of <application> tag:
1
2
3
|
< application android:name = ".Globals" ....
/> |
c) Then you can access your global data from any Activity by callinggetApplication()
1
2
|
Globals
g = (Globals)getApplication(); int
data=g.getData(); |