正式的RecyclerView第一天

2017-12-03  本文已影响0人  瑶瑶_2930

摘自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"

干啥?

mRecyclerView=(RecyclerView)findViewById(R.id.my_recycler_view);     
//设置布局管理器
mRecycyclerView.setLayoutManager(mLayoutManager);

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

         mRecyclerView.setItemAnimator(new DefaultItemAnimator());

然后,传入参数代表?

       mRecyclerView.addItemDecoration(mDividerItemDecoration);

使用前

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

使用

     compile 'com.android.support:recyclerview-v7:+'//或者改成对应小版本把,如v7:23.4.0       
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没有手把手地教敲代码,然后我放弃了它.....

上一篇 下一篇

猜你喜欢

热点阅读