我需要设置android.arch.lifecycle.LiveData的观察方法?

时间:2017-11-24 13:21:35

标签: android android-livedata

我有片段:

public class BasketFragment extends Fragment {
    ....
           public View onCreateView
             ...

And Room dao方法在LiveData中返回onCreateView

LiveData<List<BasketItem>> listLiveData = MyApplication.me().getDatabase().basketDao().getAll();
        listLiveData.observe(this, basketItems -> {
            BasketAdapter basketAdapter = new BasketAdapter(basketItems);
            basketAdapter.setOnItemClickListener(new ClickHandler());
            recyclerView.setAdapter(basketAdapter);
        });

我可以设置为observe方法:这个,getActivity()但我没有说明我需要什么。因为observ设置了第一个参数:

@NonNull LifecycleOwner owner  

如果我设置了这个(BasketFragment)或getActivity() - 它不是LifecycleOwner

你需要做什么?

1 个答案:

答案 0 :(得分:1)

您的活动需要继承FragmentActivity(包括继承自AppCompatActivity),或者您的片段需要从Fragmentandroid.support.v4.app.Fragment)的后端继承。