BRVAH_基本使用

作者: 死鬼土匪 | 来源:发表于2019-04-13 18:11 被阅读0次
BRVAH是GitHub上的一个RecyclerView 框架,非常强大 。
代码可以运行,GitHub仓库和依赖要加上去
其他的看代码注释

activity_main

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<android.support.v7.widget.RecyclerView
    android:id="@+id/id_recyclerview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:divider="#000000"
    android:dividerHeight="10dp" />

</RelativeLayout>

item1

  <?xml version="1.0" encoding="utf-8"?>
  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="50dp"
      android:orientation="horizontal">

  <TextView
      android:id="@+id/id_num"
      android:layout_width="0dp"
      android:layout_height="match_parent"
      android:layout_weight="1"
      android:background="#44ff0000"
      android:gravity="center"
      android:text="1" />

</LinearLayout>

MainActivity

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import java.util.ArrayList;
import java.util.List;
import android.view.View;
import android.widget.Toast;
import com.chad.library.adapter.base.BaseQuickAdapter;

public class MainActivity extends AppCompatActivity {

private RecyclerView mRecyclerView;
private List<String> mDatas;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //模拟数据
    initData();
    //获取控件
    mRecyclerView = (RecyclerView) findViewById(R.id.id_recyclerview);
    //方向
    mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
    //item布局、列表数据源
    HomeAdapter mAdapter = new HomeAdapter(R.layout.item1, mDatas);
    //适配器
    mRecyclerView.setAdapter(mAdapter);
    //动画
    mAdapter.openLoadAnimation(BaseQuickAdapter.ALPHAIN);
    //单击事件
    mAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
        @Override
        public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
            Toast.makeText(MainActivity.this, "单击" + mDatas.get(position), Toast.LENGTH_SHORT).show();
        }
    });
    //长按事件
    mAdapter.setOnItemChildLongClickListener(new BaseQuickAdapter.OnItemChildLongClickListener() {
        @Override
        public boolean onItemChildLongClick(BaseQuickAdapter adapter, View view, int position) {
            Toast.makeText(MainActivity.this, "长按" + mDatas.get(position), Toast.LENGTH_SHORT).show();
            return false;
        }
    });

  }

protected void initData() {
    mDatas = new ArrayList<>();
    for (int i = 'A'; i < 'Z'; i++) {
        mDatas.add("" + (char) i);
        }
    }
}

HomeAdapter

import android.graphics.Color;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import java.util.List;

class HomeAdapter extends BaseQuickAdapter<String, BaseViewHolder> {

HomeAdapter(int layoutResId, List<String> data) {
    super(layoutResId, data);
}

@Override
protected void convert(BaseViewHolder helper, String data) {
    helper.setText(R.id.id_num, data);
    //添加监听事件
    helper.addOnClickListener(R.id.id_num);
    //getLayoutPosition() 获取当前item的position
    if (helper.getAdapterPosition() % 2 == 0) {
        helper.setTextColor(R.id.id_num, Color.RED);
    } else {
        helper.setTextColor(R.id.id_num, Color.YELLOW);
    }
  }
}

maven 仓库(Project : test)

allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
    }
}

添加依赖(Module:test)

dependencies {
    ...
    implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30' 
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    ...
}

相关文章

  • BRVAH_基本使用

    BRVAH是GitHub上的一个RecyclerView 框架,非常强大 。 代码可以运行,GitHub仓库和依赖...

  • Flutter--Text/Container/Image

    Text基本使用 Container基本使用 Image基本使用

  • 基本使用

    1、 打开需要上传的文件夹执行: git init 格式化窗口 2、执行 git add . 上传文件 3、执行 ...

  • 基本使用

    href="javascript:;" 其中javascript: 是一个伪协议。它可以让我们通过一个链接来调用...

  • 基本使用

    数据库: 什么是数据库?简单来说就是存数据的。 都有什么是数据库? oracle(强大,跟金融政府打交道的,安全,...

  • 基本使用

    本文参考:https://morvanzhou.github.io/tutorials/machine-learn...

  • 6-xpath和css select基本使用

    Xpath基本使用 css select基本使用

  • MySQL语法入门(一)

    MySQL语法入门(一) 基本运算符使用 基本数学函数使用 基本字符串函数使用 基本日期时间函数使用

  • python time与datetime模块基本使用

    time模块基本使用 datetime模块基本使用

  • SQL语句基本使用

    SQL语句基本使用——增删改查 SQL语句基本使用——WHERE子句 SQL语句基本使用——AND和OR的使用 S...

网友评论

    本文标题:BRVAH_基本使用

    本文链接:https://www.haomeiwen.com/subject/nxerwqtx.html