- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
有ComponentCallbacks interface在 android 中由 Activity 、ActivityGroup、服务等使用。他们实现它并在 Activity 配置更改时某人通知他们。所以,我想创建自己的类来实现 ComponentCallbacks 监听 onConfigurationChanged 并执行一些操作......所以我的类正在实现,但是......我想我需要在某人的观察者中注册我的类.
那么,这可能吗?有没有什么方法可以“注册”我自己的类,以便在配置更改时得到通知?
我猜这个人可能是 ActivityThread 和它的方法 collectComponentCallbacksLocked。但是我在这里没有看到任何方法来注册我自己的类(class)。
ActivityThread和 ComponentCallbacks using
附注当然我可以覆盖 Activity 的方法 onConfigurationChange change 然后调用我的类的 onConfigurationChanged 方法,但我不想。我想知道在android中是否有任何方法可以做到这一点。
最佳答案
在“Google I/O 2012 - Doing More with Less:Being a Good Android Citizen”演讲(您可以在 youtube 上找到)中解释说,您可以通过调用 Context.registerComponentCallbacks
。因此,您只需让您的类实现 ComponentCallbacks
接口(interface)(或您希望的 ComponentCallbacks2
),您可以重写的方法会自动添加,并从您的 Activity、Fragment 中添加。 . 只需从您的类(class)传递实例即可注册到它。像这样:
registerComponentCallbacks( mYourClass );
那应该做的工作:)
关于android - 实现 ComponentCallbacks 以监听 onConfigurationChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11275738/
有ComponentCallbacks interface在 android 中由 Activity 、ActivityGroup、服务等使用。他们实现它并在 Activity 配置更改时某人通知他们
我正在尝试为我正在处理的(多模块)Android 项目生成 Cobertura 覆盖率报告。当我开始实现代码覆盖率时,该项目已经存在。这个项目的结果应用程序在所有使用的设备上运行良好。 我们从命令行启
我是一名优秀的程序员,十分优秀!