RecyclerView
来源:互联网 发布:武汉大学网络教学平台 编辑:程序博客网 时间:2024/06/05 08:52
效果图
1.RecyclerView 5.0
添加RecyclerView引用:
compile 'com.android.support:recyclerview-v7:24.0.0-alpha1'(build.gradle)
<1>布局方式:LayoutManager
横向布局
垂直布局
网格布局Grid
<2>分割线:ItemDecoration
Github托管源码:https://github.com/yqritc/RecyclerView-FlexibleDivider
<?xml version="1.0" encoding="utf-8"?><LinearLayout 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.zking.administrator.myapplication.MainActivity"> <android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/rv_main_recycler"> </android.support.v7.widget.RecyclerView></LinearLayout>
Java代码
package com.zking.administrator.myapplication;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.support.v7.widget.GridLayoutManager;import android.support.v7.widget.LinearLayoutManager;import android.support.v7.widget.RecyclerView;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;public class MainActivity extends AppCompatActivity { private RecyclerView rv_main_recycler; private String[] names; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); rv_main_recycler = (RecyclerView) findViewById(R.id.rv_main_recycler); names = new String[]{"嘎嘎嘎","呵呵呵","急急急"}; //指定RecyclerView的排序方式LinearLayoutManager一行一行的排 //rv_main_recycler.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL,false)); //GridLayoutManager一格一格的 rv_main_recycler.setLayoutManager(new GridLayoutManager(this,2,GridLayoutManager.VERTICAL,false)); rv_main_recycler.setAdapter(new MyAdapter()); } class MyAdapter extends RecyclerView.Adapter{ //再在类里边写一个类部类 class MyViewHolder extends RecyclerView.ViewHolder{ public TextView textView; public MyViewHolder(View itemView) { super(itemView); textView= (TextView) itemView.findViewById(android.R.id.text1); } } //类似BaseAdapter中的getView方法 //ViewHolder 类似BaseAdapter中的ItemTag @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { //解析布局文件 View v=getLayoutInflater().inflate(android.R.layout.simple_list_item_1,null); //在这里要求返回一个view类型 return new MyViewHolder(v); } //绑定值 @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { //拿别人写的Holder强转为自己的 MyViewHolder myViewHolder= (MyViewHolder) holder; myViewHolder.textView.setText(names[position]); } @Override public int getItemCount() { return names.length; } }}
阅读全文
0 0
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- RecyclerView
- MySql如何进行数据迁移
- 《JavaScript语言精粹》笔记(2)--对象
- Struts2:登录验证码(随机字符串)的实现
- cookie&session
- 内联函数总结
- RecyclerView
- ArrayList源码学习
- SQL模糊查询排序问题
- 关于人工智能的一些介绍与看法
- keepalived+nginx的配置
- MySQL优化系列(七)--视图应用详解
- Vuforia的学习(五)ImageTarget的使用
- 51NOD 1316 回文矩阵 【枚举】
- uva 401