最基础的RecyclerView

来源:互联网 发布:知乎 陌生人 编辑:程序博客网 时间:2024/06/14 03:06

Actvity

package com.example.administrator.myapplication;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.support.v7.widget.LinearLayoutManager;import android.support.v7.widget.RecyclerView;import com.example.administrator.myapplication.Adapter.MyRecycleAdapter;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    private RecyclerView recyclerView;    private MyRecycleAdapter adapter;    private ArrayList<String> data = new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        recyclerView = (RecyclerView) findViewById(R.id.recycle);        getData();       adapter = new MyRecycleAdapter(getApplicationContext(),data);        recyclerView.setAdapter(adapter);        //布局管理器,context,水平或竖直,是否反转        LinearLayoutManager ly = new LinearLayoutManager(getApplicationContext(),LinearLayoutManager.HORIZONTAL,false);        recyclerView.setLayoutManager(ly);    }    private void getData() {        data.add("hah111");        data.add("我问问1");        data.add("我问问2");        data.add("我问问3");        data.add("我问问4");        data.add("我问问5");    }}

Adapter

package com.example.administrator.myapplication.Adapter;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;import com.example.administrator.myapplication.R;import java.util.ArrayList;import java.util.zip.Inflater;/** * Created by FansyMeng on 2016/11/6. * *///RecyclerView有着自己的ViewHolder,目的是强制我们使用ViewHolderpublic class MyRecycleAdapter extends RecyclerView.Adapter<MyViewHolder> {    //2.创建构造方法    private Context context;    private ArrayList<String> data;    private Inflater inflater;    public MyRecycleAdapter(Context context, ArrayList<String> data) {        this.context = context;        this.data = data;    }    //3.创建ViewHoler    @Override    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {        View view = LayoutInflater.from(context).inflate(R.layout.lv_item,null);        MyViewHolder holder = new MyViewHolder(view);        return holder;    }    @Override    public int getItemCount() {        return data.size();    }    //4.这个用来设置我们的条目内容    @Override    public void onBindViewHolder(MyViewHolder holder, int position) {        holder.textView.setText(data.get(position));    }}//1.自己定义一个ViewHolderclass MyViewHolder extends RecyclerView.ViewHolder{    protected TextView textView;    public MyViewHolder(View itemView) {        super(itemView);        textView = (TextView) itemView.findViewById(R.id.tv_name);    }}
0 0