From efa9ae9050988b08b761500126bf4c3fe13cbf94 Mon Sep 17 00:00:00 2001 From: SiberiaDante <994537867@qq.com> Date: Thu, 30 Nov 2017 14:57:02 +0800 Subject: [PATCH] NormalDecoration --- SDAndroidLib/build.gradle | 4 +- .../lib/view/NormalDecoration.java | 52 +++++++++++++++++++ 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 SDAndroidLib/src/main/java/com/siberiadante/lib/view/NormalDecoration.java diff --git a/SDAndroidLib/build.gradle b/SDAndroidLib/build.gradle index 3667a56..2bb9191 100644 --- a/SDAndroidLib/build.gradle +++ b/SDAndroidLib/build.gradle @@ -9,8 +9,8 @@ android { defaultConfig { minSdkVersion rootProject.ext.midSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 7 - versionName "1.0.7" + versionCode 8 + versionName "1.0.8" consumerProguardFiles 'siberiadante-proguard-rules.pro' // testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } diff --git a/SDAndroidLib/src/main/java/com/siberiadante/lib/view/NormalDecoration.java b/SDAndroidLib/src/main/java/com/siberiadante/lib/view/NormalDecoration.java new file mode 100644 index 0000000..8f26884 --- /dev/null +++ b/SDAndroidLib/src/main/java/com/siberiadante/lib/view/NormalDecoration.java @@ -0,0 +1,52 @@ +package com.siberiadante.lib.view; + +import android.graphics.Canvas; +import android.graphics.Paint; +import android.graphics.Rect; +import android.support.v7.widget.RecyclerView; +import android.view.View; + +/** + * @Created SiberiaDante + * @Describe: + * @CreateTime: 2017/11/30 + * @UpDateTime: + * @Email: 2654828081@qq.com + * @GitHub: https://github.com/SiberiaDante + */ + +public class NormalDecoration extends RecyclerView.ItemDecoration { + + private Paint mPaint; + private int mHeight; + + public NormalDecoration(int color, int height) { + this.mHeight = height; + mPaint = new Paint(); + mPaint.setColor(color); + mPaint.setAntiAlias(true); + } + + @Override + + public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) { + super.onDraw(c, parent, state); + int childCount = parent.getChildCount(); + Rect rect = new Rect(); + rect.left = parent.getPaddingLeft(); + rect.right = parent.getWidth() - parent.getPaddingRight(); + for (int i = 0; i < childCount; i++) { + View childView = parent.getChildAt(i); + rect.top = childView.getBottom(); + rect.bottom = rect.top + mHeight; + c.drawRect(rect, mPaint); + } + } + + + @Override + public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { + super.getItemOffsets(outRect, view, parent, state); + outRect.bottom += mHeight; + } +} \ No newline at end of file