【发布时间】:2016-08-31 19:14:39
【问题描述】:
在 Android 7 上,获取 DecorView 的上下文会返回 DecorContext 类,它不是 Activity。我曾经使用 Activity a = (Activity)view.getContext() 获取活动,但它不再适用于 Android 7 上的 DecorView。有什么有效的方法可以从 DecorView 获取活动?
我现在使用反射来获取DecorView的窗口,然后获取该窗口的上下文(这是一个Acitivity)。
Field f = decorView.getClass().getDeclaredField("mWindow");
f.setAccessible(true);
Window w = (Window) f.get(decorView);
Activity a = (Activity) w.getContext();
有没有使用标准API的方法?
【问题讨论】:
标签: android android-activity android-context android-7.0-nougat