zoukankan      html  css  js  c++  java
  • android Fragment使用RecyclerView

    1、先对系统生成的Fragment改造成更直观的,比如这种

    public class DashboardFragment extends Fragment {
    
        private DashboardViewModel dashboardViewModel;
    
        public View onCreateView(@NonNull LayoutInflater inflater,
                                 ViewGroup container, Bundle savedInstanceState) {
            View view =inflater.inflate(R.layout.fragment_dashboard,container,false);
            return view;
            /*
            /*
            dashboardViewModel =
                    ViewModelProviders.of(this).get(DashboardViewModel.class);
            View root = inflater.inflate(R.layout.fragment_dashboard, container, false);
            final TextView textView = root.findViewById(R.id.text_dashboard);
            dashboardViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
                @Override
                public void onChanged(@Nullable String s) {
                    textView.setText(s);
                }
            });
            return root;
             */
        }
    }

    2、把Activity里用RecyclerView的拷贝过来,稍微改造下即可,如果找不到R.layout. 里的布局,可重新打开工程等

    import com.example.mytest2.R;
    
    public class NotificationsFragment extends Fragment {
    
        //private NotificationsViewModel notificationsViewModel;
        private RecyclerView mRecyclerView;
        private ArticleAdapter mArticleAdapter;
        public View onCreateView(@NonNull LayoutInflater inflater,
                                 ViewGroup container, Bundle savedInstanceState) {
    
            View view =inflater.inflate(R.layout.fragment_notifications,container,false);
    
            mRecyclerView = (RecyclerView) view.findViewById(R.id.rv_list);
            LinearLayoutManager llm = new LinearLayoutManager(getActivity());//(this);
            llm.setOrientation(LinearLayoutManager.VERTICAL);
            mRecyclerView.setLayoutManager(llm);
            mArticleAdapter=new ArticleAdapter(/*this,*/llm);
            mRecyclerView.setAdapter(mArticleAdapter);
    
            return view;
    
            /*
            notificationsViewModel =
                    ViewModelProviders.of(this).get(NotificationsViewModel.class);
            View root = inflater.inflate(R.layout.fragment_notifications, container, false);
            final TextView textView = root.findViewById(R.id.text_notifications);
            notificationsViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
                @Override
                public void onChanged(@Nullable String s) {
                    textView.setText(s);
                }
            });
            return root;
    */
    
        }
    }
  • 相关阅读:
    资料描述Android依赖注入:Google Guice on Android
    样本图片关于训练样本的真值标定
    文件配置GlassFish下手动部署JSF程序
    C语言关于链表的各项操作总结单向链表
    模式实现设计模式Java实现(四)
    节点交换《算法导论》学习笔记 第6章 二叉堆
    算法堆排序堆排序
    项目组织高级项目管理师个人总结基础知识
    字体代码Unity3D中汉字显示不完整的解决方案
    网站关键词[置顶] 如何做才能做到避免网站优化过度
  • 原文地址:https://www.cnblogs.com/cnchengv/p/14660401.html
Copyright © 2011-2022 走看看