0

Fragment 生命周期中保留实例的唯一区别是onCreate()不调用。但是在这种状态下,视图还没有膨胀。

我什么时候必须调用Fragment之类loadNews()的方法?我只想在创建新的 Fragment 实例时才这样做。PresentersetRetainInstance(true)loadNews()

4

1 回答 1

1

这样做是Fragment.onViewCreated()因为此时您可以确定 UI(视图)已初始化并准备好显示内容(否则,即演示者调用 view.showLoading() 将导致 NullPointerException)。但是您必须自己确保 loadingData 仅在第一次被调用(即检查 if bundle == null

如果您使用 Mosby 的 ViewState 功能,则覆盖onNewViewState()方法并调用presenter.loadData(). Mosby 只会在 View 第一次出现时调用此方法,因此您不必bundle == null自己检查是否。

于 2016-06-29T09:11:59.073 回答