zoukankan      html  css  js  c++  java
  • Recycleview 横竖屏

    看到了一篇贴子:https://blog.csdn.net/yaosongqwe/article/details/48710375

            //竖屏线性展示
            mLlayoutmanager = new LinearLayoutManager(this);
            //横屏每行显示3个
            mGlayoutmanager = new GridLayoutManager(this,3);
    
    
    
        @Override
        public void onConfigurationChanged(Configuration newConfig) {
            super.onConfigurationChanged(newConfig);
            reviewonScreenChanged(newConfig);
        }
    
    
     private void reviewonScreenChanged(Configuration newConfig) {
            if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
                //横屏
                recyclerView.setLayoutManager(mGlayoutmanager);
            }else {
                //竖屏
                recyclerView.setLayoutManager(mLlayoutmanager);
            }
        }
    
    
        @Override
        protected void onSaveInstanceState(Bundle outState) {
            super.onSaveInstanceState(outState);
            outState.putStringArrayList("data", datas);
        }
    
    //在onCreate里面获取横竖屏切换保存的data
    //切换屏幕时保存数据,如有数据,则不再进行数据的初始化
            if (savedInstanceState != null && savedInstanceState.getStringArrayList("data") != null) {  
                datas = savedInstanceState.getStringArrayList("data");
            }else {
                initData();
            }

    贴子二:https://blog.csdn.net/hhy107107/article/details/50429785

    实现横竖布局穿插

    RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
            GridLayoutManager gridLayoutManager = new GridLayoutManager(getContext() ,2);
            //todo 这个属性很重要,可以直接实现上图的效果
            gridLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup(){
                @Override
                public int getSpanSize(int position) {
                    if(position % 3 == 0) return 2;
                    return 1;
                }
            });
            recyclerView.setLayoutManager(gridLayoutManager);
            recyclerView.setAdapter(adapte);
  • 相关阅读:
    事件总线2
    微信小程序视频录制教程
    vue插件开发-toast
    云计算中的测试,可从哪些维度入手
    ES配置及FAQ
    Azkaban安装及问题
    python 反编译 compileall
    平凡利用redis进行数据读写的一种优化
    彻底弄懂Redis的内存淘汰策略
    c# 判断年龄精确到日
  • 原文地址:https://www.cnblogs.com/liyanli-mu640065/p/9171429.html
Copyright © 2011-2022 走看看