Android基础知识--6.Context的理解及应用

来源:互联网 发布:js base64转二进制流 编辑:程序博客网 时间:2024/04/29 10:44
Context:一个访问全局信息的接口,如应用程序的资源(图片资源、字符串资源等),一些常用的组件会继承Context,如Activity
      
     Activity中的组件TextView、ImageView等,构造函数需传入Context类的参数来访问全局信息,如:
             ImageView iv=new ImageView(this);
             iv.getImageResource(R.mipmap.ic_launcher);
             setContentView(iv);
 会访问到并显示图片ic_launcher

  Application: 创建一个类app并继承Application,AndroidManifest.xml文件中在application标签下配置一个名字android:name=".App",这样就定义了androidApplication它是一个全局上下文对象,在MainActivity中可通过方法getApplicationContext()来获取Application全局的对象

   实现数据共享:定义一个类App使它继承Application,声明一个字符串变量textData默认值"default",并定义它的set方法setTextData()和get方法getTextData();定义两个activity名为Main1、Main2,并绑定对应的layout,使用同样的布局:文本textView、输入文本editText、保存按钮btnSave,在两个activity中获取资源,重写参数为Bundle的onCreate函数,并设置监听器:
          public void onClick(View v){
((App)getApplicationContext()).setTextData(editText.getText().toString());
textView.setText("共享的数据是:"+((App)getApplicationContext()).getTextData());
          }
运行即可实现数据共享

Application生命周期:
    onCreate():启动时执行,优先于activity的onCreate方法
    onTerminate():结束时执行,几乎不会执行
    onLowMemory():低内存时执行,几乎不执行
    onTrimMemory():程序内存清理时执行
    onConfigurationChanged():配置改变时执行

 

0 0
原创粉丝点击