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表单多字段布局的一些思考
    thrift 试用
    关于带角度的箭头
    同步和异步
    storm各组件基本概念
    AWK使用实例
    Hotspot虚拟机目录结构
    大数据生态
    代码生成器 架构提取工具tqdemo
    [源码]C# to SQL 的翻译器.net 1.1版
  • 原文地址:https://www.cnblogs.com/cnchengv/p/14660401.html
Copyright © 2011-2022 走看看