美文网首页
正式的RecyclerView第一天

正式的RecyclerView第一天

作者: 瑶瑶_2930 | 来源:发表于2017-12-03 17:31 被阅读0次

    摘自RecycyclerView使用完全指南
    附上自己一直没掌握的东西:如何找到activity_main.xml233

    屏幕快照 2017-11-28 下午5.51.48.png
    应该在创建的时候把它设置为主布局,默认命名为这个,然后所有的布局文件都在app/src/main/res/layout下...
    然后是每次把它改成线性布局的代码。。。
    <LinearLayout xmlns:android ="http://schemas.android.com/apk/res/android"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
    

    干啥?

    • 设置LayoutManager控制item的布局方式,横向,竖向,瀑布流。
      e.g
    mRecyclerView=(RecyclerView)findViewById(R.id.my_recycler_view);     
    //设置布局管理器
    mRecycyclerView.setLayoutManager(mLayoutManager);
    

    emm,我有两个疑惑先放着,一个是,recyclerview的id是哪设置的呢,在哪找呢?另一个是,set方法传入的参数是?

    • 设置item操作的动画(删或加)
      e.g
             mRecyclerView.setItemAnimator(new DefaultItemAnimator());
    

    然后,传入参数代表?

    • 设置item的间隔样式
           mRecyclerView.addItemDecoration(mDividerItemDecoration);
    
    • item的点击和长按事件

    使用前

    必需指定一个适配器和布局管理器
    Adapter extends RecyclerView.Adapter.具体实现取决于数据信息和UI
    LayoutManager 确定item的展示方式及何时复用不可见的item(什么意思?
    LinearLayoutManager
    GridLayoutManager
    StaggeredGridLayoutManager

    使用

    • 导包
         compile 'com.android.support:recyclerview-v7:+'//或者改成对应小版本把,如v7:23.4.0       
    
    • Activity
    public class MDActivity extends MDBaseActivity{
        private RecyclerView mRecyclerView;
        private RecyclerView.Adapter mAdapter;
        private RecyclerView.LayoutManager mLayoutManager;
    //新建对象的引用变量,后面写在一起是一样的,主要想说明下要指定个适配器和布局管理器
    }           
        @Override 
    //重写父类的构造方法,好像都有super.这玩意
        protected void onCreate(Bundle savedInstanceState){
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_rv);//似乎是加载布局  
            initData();
            initView();
    }
     //好奇?什么东西要写在onCreate方法里呢???   
    private void initData(){
            mLayoutManager=new LinearLayoutManager(this,LinearlAYOUTmANAGER.VERTICAL,false);
            //不明白为什么要在initdata里创建layoutmanager的对象,都可以用?     
            //然后false什么意思?
            mAdapter=new  Myadapter(getData());
            //为什么要在initData里写这个?myadapter是哪来的?
       }    
    private void initView(){
            mRecyclerView=(RecyclerView)findViewById(R.id.my_recycler_view);
            //设置布局管理器了
            mRecyclerView.setLayoutManager(mLayoutManager)'
            //设置adapter
            mRecyclerView.setAdapter(mAdapter);
    }
    
    

    草草了事....因为这篇blog没有手把手地教敲代码,然后我放弃了它.....

    相关文章

      网友评论

          本文标题:正式的RecyclerView第一天

          本文链接:https://www.haomeiwen.com/subject/cujebxtx.html