- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我需要在 LifecycleObserver 中获取 LifecycleOwner 以将其传递给 ViewModel 观察器。
这是我的 MainActivity,我添加了 LifecycleObserver。
public class MainActivity extends AppCompatActivity implements LifecycleOwner{
private LifecycleRegistry mLifecycleRegistry;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.replace(R.id.container, MainFragment.newInstance())
.commitNow();
}
mLifecycleRegistry=new LifecycleRegistry(this);
mLifecycleRegistry.markState(Lifecycle.State.CREATED);
getLifecycle().addObserver(new MyLifecycleObserver());
}
@NonNull
@Override
public Lifecycle getLifecycle() {
return mLifecycleRegistry;
}
}
这是我的观察者,我需要 LifecycleOwner。
public class MyLifecycleObserver implements LifecycleObserver {
@OnLifecycleEvent(Lifecycle.Event.ON_START)
public void onStartListener(){
FirebaseMassage.startFirebase();
MainFragment.massageViewModel.getMassage().observe(/*here I need the LifecycleOwner*/, textMassage -> {
FirebaseMassage.updateFirebaseMassage(textMassage);
});
}
}
最佳答案
您可以使用另一个签名来获取 LifecycleOwner
,例如:
public class MyLifecycleObserver implements LifecycleObserver {
@OnLifecycleEvent(Lifecycle.Event.ON_START)
public void onStartListener(LifecycleOwner owner){
...
}
}
关于android - 如何获取LifecycleObserver中的LifecycleOwner?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51973851/
没有调用观察者方法。我按照老派的方式测试了 ViewPagerCycler 并且工作完美。感谢帮助。 public final class ViewPagerCycler implements Lif
我正在处理一个使用架构组件的项目,我对正确使用 LifecycleObserver 模式有疑问。 问题是:我什么时候应该取消注册观察者,如果没有调用取消注册会发生什么? 简单直接的用例如下所示: pu
使用 LifecycleObserver 制作生命周期感知组件非常容易,例如当用户离开屏幕时暂停和停止 MediaPlayer。 但是有什么方法可以让我知道生命周期是否正在经历 onPause、onS
安卓世界。当我尝试运行该应用程序时,它会记录返回此错误 Error:(51, 26) error: cannot access LifecycleObserver class file for and
Google 在 Android 上弃用 Fragment 的 onActivityCreated() 并推荐使用 LifeCycleObserver: To get a callback spec
阅读ViewModel overview ,我想知道 ViewModel 也可以同时成为 LifecycleObserver 吗?我这样做的目的是在用户不与 UI 交互时断开 Firebase 监听器
我正在编写一个(尝试)遵循 MVVM 设计模式的应用程序。我想从该层的其他部分观察模型层的变化。例如 假设我正在使用 room 从我的数据库中公开对象列表: @Dao interface MyDao
我很难理解 LiveData 是 LifecycleObserver 和 Observer 之间的区别 LiveData 对象在 observe() 方法中接收。 LiveData 是一个 Lifec
我的 ViewModel 类实现了 LifecycleObserver。当我调用 fragment.lifecycle.addObserver(this) 时,它会产生异常。 Caused by: j
我已阅读有关 Life Cycle 的文档和 Live Data在android官方文档中。我知道该类实现了 LifeCycleObserver 并使位置监听器自动关闭或打开。我也知道实时数据可以自动
我目前使用 LifecycleObserver 来通知我的 View 的事件,例如 onStart。这对于作为演示者或处理程序的组件非常有用,例如 FacebookLoginHandler 需要在 V
我是一名优秀的程序员,十分优秀!