论坛首页 移动开发技术论坛

android使用全局变量

浏览 13905 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-11-11  
一开始我是用static来做全局,后来在网上看见老外有一个很好的办法
public class MyApp extends Application {
private Integer[] state;
public Integer[] getState() {
return state;
}
public void setState(Integer[] state) {
this.state = state;
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
setState(we);
}//一定要在onCreate方法里给变量赋值
public Integer[] we=new Integer[]{
    R.drawable.b_0,R.drawable.b_1,R.drawable.b_2,
    R.drawable.b_3,R.drawable.b_4,R.drawable.b_5
};

}
在所需要的activity中使用
MyApp appState = (MyApp)getApplicationContext();
Integer[] we = appState.getState();
来获取,最后一步别忘了在manifest中的application标签中添加 android:name=".MyApp"(这儿不是新建<application></application>)
   发表时间:2010-11-12  
我也是写完程序后才知道这个方法的, 懒得改了~~~
0 请登录后投票
   发表时间:2010-11-14  
android的全局是我见过的最不爽的,经常性再初始化,一不小心就是空指针。。。
0 请登录后投票
   发表时间:2010-11-14  
android的全局变量的确有点问题,楼上的问题我也遇到了,楼主提供的这个方法可以借鉴下。
0 请登录后投票
   发表时间:2010-11-16  
我是用的单列模式来保存的全局变量,有时间试试这种方法
0 请登录后投票
   发表时间:2010-11-27  
这个方法不错`~~以后碰到就用这个……以免重蹈覆
0 请登录后投票
   发表时间:2010-11-28  
不错,老外很喜欢用Application.很不错的实现,至此,将全局变量用Application代替.
0 请登录后投票
   发表时间:2010-12-20  
请问,这与直接声明全局变量有什么区别呢,初始化报空???
这种情况我怎么没遇到过,一直就是直接声明全局变量。。。
求大师指点!
0 请登录后投票
   发表时间:2011-01-19  
可用 常量来储存数据啊这样就不会被回收了
0 请登录后投票
   发表时间:2011-01-21  
能否与其他方法比较,看出优势呢?
请指教!
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics