Java 如何将Android自定义视图注册为观察者

Java 如何将Android自定义视图注册为观察者,java,android,observer-pattern,android-sensors,Java,Android,Observer Pattern,Android Sensors,我有一个实现SensorEventListener的类方向传感器,我已经将它设置为可观察的 我有一个自定义控件方向指针,它扩展了ImageView并实现了观测者,它需要响应来自方向传感器的更新。方向指针的实例是通过XML布局创建的 我不希望OrientationPointer实现SensorEventListener,因为在同一个活动中会有多个实例 在纯Java中,我只需向OrientationPointer构造函数添加一个可观察的参数 在Android中,我似乎必须在代码中而不是XML中实例化

我有一个实现SensorEventListener的类方向传感器,我已经将它设置为可观察的

我有一个自定义控件方向指针,它扩展了ImageView并实现了观测者,它需要响应来自方向传感器的更新。方向指针的实例是通过XML布局创建的

我不希望OrientationPointer实现SensorEventListener,因为在同一个活动中会有多个实例

在纯Java中,我只需向OrientationPointer构造函数添加一个可观察的参数

在Android中,我似乎必须在代码中而不是XML中实例化方向指针,以便调用自定义构造函数,或者在onFinishInflate()期间以某种方式获取方向传感器

这两种选择是合理的,还是有更好的方法来实现这一点,同时保持侦听器和视图的分离