zoukankan      html  css  js  c++  java
  • 全局获取Context的技巧

    全局获取Context的技巧

    android开发中,非常多地方都要用到Context上下文这个类对象,比方:弹出 Toast

    的时候须要、启动活动的时候须要、发送广播的时候须要、操作数据库的时候须要、使用通

    知的时候须要等。

    假设是在Activity中,那么获取这个context对象非常easy,由于Activity本身就继承Context。直接受用this就能够了。

    可是对于比較复杂的逻辑,这些代码没有放在Activity中。那么。获取Context就显得不是那么easy了。

    这里告诉大家一个技巧:

    Android 提供了一个 Application 类。每当应用程序启动的时候,系统就会自己主动将这个类

    进行初始化。

     而我们能够定制一个自己的 Application 类, 以便于管理程序内一些全局的状态信息,比方说全局 Context

    1,新建一个类MyApplication继承Application.

    代码例如以下:

    package com.example.networktest;
    public class MyApplication extends Application {
        private static Context context;
        @Override
        public void onCreate() {
            context = getApplicationContext();
        }
        public static Context getContext() {
            return context;
        }
    }


    2,在 AndroidManifest.xml 文件的<application>标签下进行指定就能够了,代码例如以下所看到的:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.networktest"
    android:versionCode="1"
    android:versionName="1.0" >
    ……
    <application
    android:name="com.example.networktest.MyApplication"
    …… >
    ……
    </application>
    </manifest>

    注意:指定 MyApplication 的时候一定要加上完整的包名,不然系统将无法找到这

    个类。

     

    这样我们就已经实现了一种全局获取 Context的机制,之后无论你想在项目的不论什么地方

    使用 Context,仅仅须要调用一下 MyApplication.getContext()就能够了。


  • 相关阅读:
    关于jqGrid组件数据显示不出问题
    jq修改导航栏样式(选中、使用两张图片替代的是否选中效果)
    jq获取图片并转换为base64
    jq怎么给图片绑定上传文件按钮
    ajax上传文件
    layui超链接追加tab选项卡必须手动刷新才出现问题
    thinkphp5中使用excel导出数据表格(包涵图片)
    关于php条形码生成(barcode),修改样式
    php中对象赋值问题
    数组小工具2
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5180902.html
Copyright © 2011-2022 走看看