当前位置:  开发笔记 > Android > 正文

检测每个触摸事件而不获取应用程序上下文?

如何解决《检测每个触摸事件而不获取应用程序上下文?》经验,为你挑选了1个好方法。

我们可以通过在上下文中使用getWindow()获取每个Activity的Touch事件:

//set Window.Callback for getting touch event 
        final Window window = context.getWindow();
        final Window.Callback localCallback = window.getCallback();
        window.setCallback(new MyWindowCallback(localCallback));

如何在不使用上下文的情况下实现它?

有没有办法删除这个回调(因为窗口类没有任何删除回调方法?



1> Adhikari Bis..:

有一种方法可以获取Application上下文而不传递它.我在生产环境中使用过这段代码,这很好用.

private static Application getApplicationContext() throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException {
    Context context;
    final Class activityThreadClass =
            Class.forName("android.app.ActivityThread");
    final Method method = activityThreadClass.getMethod("currentApplication");
    context = (Application) method.invoke(null, (Object[]) null);
    Log.d(tag_, "Context is " + context);
    application = (Application)context;
    return application;
}


我试图在我之前的评论中说这个.:)
推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有