RecycleView的使用
来源:互联网 发布:如何自建cdn源码 编辑:程序博客网 时间:2024/06/15 20:28
首先要导入RecycleView的库:
在Build.gradle文件中添加代码然后编译。
implementation 'com.android.support:recyclerview-v7:26.1.0'
然后开始布局
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.zhanhaoxuan.recycleview_demo.MainActivity"><android.support.v7.widget.RecyclerView android:id="@+id/recycle_view" android:layout_width="match_parent" android:layout_height="wrap_content"></android.support.v7.widget.RecyclerView>e</android.support.constraint.ConstraintLayout>
在MainActivity文件中
public class MainActivity extends AppCompatActivity { private RecyclerView recycle_view; private ArrayList<String> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //找控件 recycle_view = findViewById(R.id.recycle_view);//初始化 initData();//3.设置布局管理器 线性布局管理器// LinearLayoutManager manager=new LinearLayoutManager(this);// manager.setOrientation(LinearLayoutManager.HORIZONTAL);//设置方向:纵向// recyclerView.setLayoutManager(manager);//网格布局管理器 GridLayoutManager manager=new GridLayoutManager(this,3); manager.setOrientation(GridLayoutManager.VERTICAL); recycle_view.setLayoutManager(manager); //创建适配器 Myadapter adapter=new Myadapter(list,this); recycle_view.setAdapter(adapter); } private void initData() { list = new ArrayList<>(); list.add("推荐"); list.add("视频"); list.add("娱乐"); list.add("新闻"); list.add("社会"); list.add("科技"); list.add("军事"); list.add("英语"); list.add("音乐"); list.add("天气"); list.add("OK"); }}然后是创建适配器
首先Myadapter 继承的是RecyclerView.Adapter 然后不要去实现方法,直接创建一个ViewHolder类继承自RecyclerView.ViewHolder再添加有参构造,再构造方法中找控件。然后实现三个方法即可。
public class Myadapter extends RecyclerView.Adapter<Myadapter.ViewHolder> { private ArrayList<String> list; private Context context; public Myadapter(ArrayList<String> list, Context context) { this.list = list; this.context = context; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { //引入布局 View view=View.inflate(context,R.layout.item_layout,null); ViewHolder holder=new ViewHolder(view); return holder; } @Override public void onBindViewHolder(ViewHolder holder, int position) { holder.tv.setText(list.get(position)); } @Override public int getItemCount() { return list.size(); } class ViewHolder extends RecyclerView.ViewHolder{ private final TextView tv; public ViewHolder(View itemView) { super(itemView); tv = itemView.findViewById(R.id.tv); }}}
item的XML文件
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"><TextView android:layout_width="70dp" android:id="@+id/tv" android:layout_height="30dp" android:layout_margin="10dp" android:gravity="center" android:background="#ccc" /></RelativeLayo
阅读全文
1 0
- Android RecycleView---- RecycleView的简单使用
- Recycleview的使用
- RecycleView的使用
- RecycleView 的使用
- Android RecycleView的使用
- RecycleView的简单使用
- RecycleView 的使用
- RecycleView的基础使用
- android RecycleView的使用
- RecycleView的学习使用
- RecycleView的使用(一)
- RecycleView的首次使用
- RecycleView的使用
- RecycleView的使用
- RecycleView 的简单使用
- recycleView的使用
- RecycleView的使用
- RecycleView的使用步骤
- 在1-10中随机生成5个数不重复。
- Mysql函数
- 02.ARM-mini2440-GPIO操作-led_on_c
- debain9 修改静态ip地址
- iView的初步探索
- RecycleView的使用
- Altium Desinger怎么走蛇形线
- 解决WordPress项目添加插件需要ftp账号验证
- C++和java中垃圾回收机制的浅浅理解
- VC++深入详解(孙鑫著)之MFC读书笔记一.2017.12.15
- 使用MyBatis Generator自动创建代码
- java入门学习
- HTML DOM Event 对象之(toElement、fromElement、event.srcElement、event.target)
- jtopo 比例尺功能