- 浏览: 20618 次
文章分类
最新评论
android application
- 博客分类:
- android
android 开发中共享全局数据
我们在平时的开发中,有时候可能会需要一些全局数据,来让应用中的所以Activity和View都能访问到,大家在遇到这种情况时,可能首先会想到自己定义一个类,然后创建很多静态成员,不过android已经为我们提供了这种情况的解决方案。
在Android中,有一个名为Application的类,我们可以在Activity中使用getApplication(),方法来获得,它是代表我们的应用程序的类,使用它可以获得当前应用的主题,资源文件中的内容等,这个类更灵活的一个特性就是可以被我们继承,来添加我们自己的全局属性。例如我们在开发一个游戏应用,需要保存分数,那么我们就可以继承Application,代码如下:
public class GameApplication extends Application{
private int score;
public int getScore(){
return score;
}
public void setScore(int score){
this.score=score;
}
}
这样我们就扩展了自己的属性,不过还没有结束,另外一个比较关键的一步,是需要在
androidManifest.xml文件中将我们扩展后的Application类指定上去,例如下面的代码:
<application
android:name=".GameApplication"
android:icon="@drawable/icon"
android:label="@string/app_name">
这样指定好之后,我们的自定义Application就算完成了,然后我们可以很方便的在任何Activity和View中来获得我们的分数属性,代码如下:
在Activity中:
((GameApplication)getApplication()).setScore(100)
((GameApplication)getApplication()).getScore();
在View中:
((GameApplication)getContext().getApplicationContext()).getScore()
注意:
在使用这种方式的时候可能会遇到getApplication返回null的情况,有可能是调用getApplication的时机不对,如果是在类未定义完成的地方(比如变量定义部分),
此时无法得到实例,所以就会出现空指针
//application里面一般都放置个操作数据库的对象,如附件,代码。这个操作数据库的对象,会有private SQLiteDatabase db;这个实例化后不需要像cursor那样每次操作都关闭。以提高性能。
我们在平时的开发中,有时候可能会需要一些全局数据,来让应用中的所以Activity和View都能访问到,大家在遇到这种情况时,可能首先会想到自己定义一个类,然后创建很多静态成员,不过android已经为我们提供了这种情况的解决方案。
在Android中,有一个名为Application的类,我们可以在Activity中使用getApplication(),方法来获得,它是代表我们的应用程序的类,使用它可以获得当前应用的主题,资源文件中的内容等,这个类更灵活的一个特性就是可以被我们继承,来添加我们自己的全局属性。例如我们在开发一个游戏应用,需要保存分数,那么我们就可以继承Application,代码如下:
public class GameApplication extends Application{
private int score;
public int getScore(){
return score;
}
public void setScore(int score){
this.score=score;
}
}
这样我们就扩展了自己的属性,不过还没有结束,另外一个比较关键的一步,是需要在
androidManifest.xml文件中将我们扩展后的Application类指定上去,例如下面的代码:
<application
android:name=".GameApplication"
android:icon="@drawable/icon"
android:label="@string/app_name">
这样指定好之后,我们的自定义Application就算完成了,然后我们可以很方便的在任何Activity和View中来获得我们的分数属性,代码如下:
在Activity中:
((GameApplication)getApplication()).setScore(100)
((GameApplication)getApplication()).getScore();
在View中:
((GameApplication)getContext().getApplicationContext()).getScore()
注意:
在使用这种方式的时候可能会遇到getApplication返回null的情况,有可能是调用getApplication的时机不对,如果是在类未定义完成的地方(比如变量定义部分),
此时无法得到实例,所以就会出现空指针
//application里面一般都放置个操作数据库的对象,如附件,代码。这个操作数据库的对象,会有private SQLiteDatabase db;这个实例化后不需要像cursor那样每次操作都关闭。以提高性能。
发表评论
-
android startActivityForResult
2012-12-25 09:02 529Bashboard.java Intent i = new I ... -
android 实现左右滑动指引效果
2012-12-18 17:29 642见附录源码 ViewPager 的使用 -
android listview 点击listview下面 显示更多
2012-12-18 15:05 1249见附件源码. 看一遍就懂了,很简单的例子. -
android listview 上拉刷新
2012-12-18 13:45 739具体源码见,附件下载。 这里列出关键性思路: 1.先定义一个 ... -
android post get
2012-12-18 09:46 691//post HttpClient client=new De ... -
android listview
2012-12-17 17:32 0android:drawSelectorOnTop=" ... -
android 实用方法
2012-12-17 15:28 0URLUtil.isValidUrl(String blogU ... -
android 分隔线
2012-12-17 15:27 867android 分隔线 1.用View 配置文件 <V ... -
android textview
2012-12-17 11:25 618textview 标题style设置. <style ... -
android edittext 边框 源码实现
2012-12-17 10:34 1207android经典edittext选中样式是,黄色,不选中是灰 ... -
android 布局边框
2012-12-17 09:25 794<RelativeLayout androi ... -
android 返回键 事件
2012-12-17 08:58 765//startActivityForResult()情况的In ... -
android 文字描边
2012-12-14 17:17 1931文字描边 android:shadowColor=" ... -
android 渐变背景
2012-12-14 15:43 1252<?xml version="1.0" ... -
android button 自定义
2012-12-14 14:58 631wp_button.xml(\drawable目录下建个) ... -
android windowSoftInputMode
2012-12-14 11:42 530android:windowSoftInputMode属性 & ... -
android 屏幕
2012-12-07 10:33 660术语和概念 Screen size(屏幕尺寸) 指手机实际的物 ... -
android 绑定 service
2012-11-29 10:39 1662(1) 一个Activity和一个Service绑定在一起,一 ... -
android 国际化 屏幕适配 样式和主题
2012-11-23 15:19 1262(1)国际化 values文件夹:如果没找到语言环境对应的默认 ... -
android 自定义 checkbox
2012-11-01 10:33 724<?xml version="1.0" ...
相关推荐
A Study of Android Application Security 学术论文
Android application structure 12 Application signing 15 Data storage on the device 15 Crypto APIs 16 Device Administration 17 Summary 17 Chapter 2: Application Building Blocks 19 Application ...
Android Application 对象介绍
Android Application Security.pdf
professional android application development 英文版,权威android 开发指南,带例子
Android Application Development For Dummies
Android Application Programming with OpenCV 英文版
Android Application Development for Dummies.pdf
Professional Android Application Development--来自网络 仅供学习 如有侵权 请联系删除
Android Application Development Android Application Development Android Application Development Android Application Development Android Application Development Android Application Development
Android Application development for Dummies android 开发 适合初学者。
Android Application Secure Design/Secure Coding Guidebook 一书的代码
Android Application Development: Programming with the Google SDK 电子书 Rick Rogers (Author), John Lombardo (Author), Zigurd Mednieks (Author), G. Blake Meike (Author) Paperback: 336 pages Publisher: ...
文档详细介绍了Android的运行机制,Application类的作用和使用方法,读过之后终于不再一知半解了!
No matter your level of programming experience, Android Application Development For Dummies is an ideal guide for getting started with developing applications for the Android platform.
Android 红皮书,从入门到精通,由浅入深,出门必备。
Introduction to Android Application Development(5th) 英文epub 第5版 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
It is assumed that you already have some Android application or at least you are familiar with the topics described extensively in the Android Dev Guide (http://developer.android.com/guide/index.html...
Adding Logging Support to Your Android Application 83 Adding Some Media Support to Your Application 84 Adding Location-Based Services to Your Application 88 Debugging Your Application on Hardware 90 ...