private ArrayList list = new ArrayList(); private MyHomeAdapter adapter; private Model model; //onCreate()方法调用之前就调用 @Override public void setUserVisibleHint(boolean isVisibleToUser) { //,isVisible()方法可以判断Fragment的视图是否创建好 //isVisibleToUser if (isVisibleToUser && isVisible()) { Log.i(TAG, "onCreateView: 创建view 之后加载数据 1"); initData(); } super.setUserVisibleHint(isVisibleToUser); } public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { //... RecyclerView recyclerView = new RecyclerView(getContext()); recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); //设置Adapter adapter = new MyHomeAdapter(list); model = new Model(getContext()); recyclerView.setAdapter(adapter); if (getUserVisibleHint()) { Log.i(TAG, "onCreateView: 创建view 1"); initData();//第一个不显示的处理方式 } return recyclerView; }
Fragment 局部更新
最新推荐文章于 2024-07-10 16:40:48 发布
该博客讨论了如何在Fragment中实现局部更新,重点在于`setUserVisibleHint`和`onCreateView`方法的使用。通过监听Fragment的可见性,判断视图是否创建好,并在合适的时候初始化数据和加载列表。同时,展示了如何设置RecyclerView及其Adapter。
摘要由CSDN通过智能技术生成