一个简单的网格布局

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>  

message_main_notice_list.xml

<?xml version="1.0" encoding="utf-8"?>          

适配器MyRecyclerViewAdapter.java:

package com.example.administrator.recyclerviewtest;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;import android.widget.TextView;import java.util.List;public class MyRecyclerViewAdapter extends RecyclerView.Adapter{  private List mList;  static class ViewHolder extends RecyclerView.ViewHolder{    View myView;    ImageView imageView;    TextView title;    public ViewHolder(View itemView) {      super(itemView);      myView = itemView;      imageView = (ImageView) itemView.findViewById(R.id.iv_image);      title = (TextView) itemView.findViewById(R.id.tv_title);    }  }  public MyRecyclerViewAdapter(List list){    this.mList = list;  }  @Override  public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.message_main_notice_list,null);    final ViewHolder holder = new ViewHolder(view);    return holder;  }  //将数据绑定到控件上  @Override  public void onBindViewHolder(ViewHolder holder, int position) {    ItemBean bean = mList.get(position);    holder.imageView.setBackgroundResource(bean.itemImage);    holder.title.setText(bean.itemTitle);  }  @Override  public int getItemCount() {    return mList.size();  }  //下面两个方法提供给页面刷新和加载时调用  public void add(List addMessageList) {    //增加数据    int position = mList.size();    mList.addAll(position, addMessageList);    notifyItemInserted(position);  }  public void refresh(List newList) {    //刷新数据    mList.removeAll(mList);    mList.addAll(newList);    notifyDataSetChanged();  }}

主方法:

package com.example.administrator.recyclerviewtest;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 java.util.ArrayList;import java.util.Date;import java.util.List;public class MainActivity extends AppCompatActivity {  private RecyclerView recyclerView;  private List list;  private MyRecyclerViewAdapter myAdapte1r;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    list = new ArrayList();    for ( int i=0; i< 19;i++){      list.add(new ItemBean(          R.mipmap.logo,          "Hello",          new Date().toString()+""      ));    }    myAdapte1r = new MyRecyclerViewAdapter(list);    recyclerView = (RecyclerView) findViewById(R.id.message_notice_list_item);    //纵向线性布局    //LinearLayoutManager layoutManager = new LinearLayoutManager(this);    //纵向线性布局    GridLayoutManager layoutManager = new GridLayoutManager(this,2);    recyclerView.setLayoutManager(layoutManager);    recyclerView.setAdapter(myAdapte1r);  }}

效果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多相关文章

  1. SpringBoot 2.0 中 HikariCP 数据库连接池原理解析
  2. 一句话锁定MySQL数据占用元凶
  3. android 图片下面显示文字
  4. Netty UDP Server&Client
  5. Android(安卓)日期选择控件
  6. Android(安卓)连接网络时显示进度条
  7. Fragment.setArguments()方法向fragment对象传递数据的重要作用
  8. 使用自己的数据库SQLite database
  9. Android——自定义顶部标题栏

随机推荐

  1. Android初级之路-Android系统架构简介
  2. Android(安卓)Studio FFMPEG 入门
  3. Android(安卓)Launcher启动流程
  4. Android(安卓)中 Button 的基本使用
  5. Flutter与原生双向通信BasicMessageChann
  6. Android(安卓)与javaEE后台网络链接测试
  7. android:roundIcon和android:icon的区别
  8. Android(安卓)Studio 应用目录结构说明
  9. Android8.1添加MTP数据同步操作
  10. 从J2EE转向Android的第九天-----文件存储