From 5ffe0393f5fd1f2976efcf17bfbd5acb9e0c122d Mon Sep 17 00:00:00 2001 From: sangcomz Date: Thu, 6 Jun 2019 15:59:30 +0900 Subject: [PATCH 1/9] chore (library): library update --- app/build.gradle | 10 +++++----- build.gradle | 6 +++--- gradle/wrapper/gradle-wrapper.properties | 4 ++-- stickytimelineview/build.gradle | 8 ++++---- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 6d49d8c..03d6822 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -44,15 +44,15 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation "androidx.appcompat:appcompat:$support_version" + implementation "androidx.appcompat:appcompat:$androidx_version" implementation "androidx.constraintlayout:constraintlayout:$constraint_version" - implementation "androidx.recyclerview:recyclerview:$support_version" + implementation "androidx.recyclerview:recyclerview:$androidx_version" implementation 'androidx.cardview:cardview:1.0.0' implementation project(':stickytimelineview') - implementation "androidx.appcompat:appcompat:$support_version" + implementation "androidx.appcompat:appcompat:$androidx_version" implementation 'androidx.constraintlayout:constraintlayout:1.1.3' testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test:runner:1.1.2-alpha02' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0-alpha02' + androidTestImplementation 'androidx.test:runner:1.2.0' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' } diff --git a/build.gradle b/build.gradle index cf3d4bc..89e84f9 100644 --- a/build.gradle +++ b/build.gradle @@ -3,8 +3,8 @@ buildscript { ext { - support_version = '1.1.0-alpha03' - kotlin_version = '1.3.21' + androidx_version = '1.1.0-alpha05' + kotlin_version = '1.3.31' constraint_version = '1.1.3' } @@ -13,7 +13,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.2' + classpath 'com.android.tools.build:gradle:3.4.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' // NOTE: Do not place your application dependencies here; they belong diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 5493714..c2c7eef 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun Mar 10 16:44:37 KST 2019 +#Thu Jun 06 15:55:23 KST 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/stickytimelineview/build.gradle b/stickytimelineview/build.gradle index 1c07a08..d9bc72e 100644 --- a/stickytimelineview/build.gradle +++ b/stickytimelineview/build.gradle @@ -31,12 +31,12 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation 'androidx.appcompat:appcompat:1.1.0-alpha03' - compile 'androidx.recyclerview:recyclerview:1.1.0-alpha03' + implementation 'androidx.appcompat:appcompat:1.1.0-alpha05' + compile 'androidx.recyclerview:recyclerview:1.1.0-alpha06' compile "androidx.constraintlayout:constraintlayout:$constraint_version" testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test:runner:1.1.2-alpha02' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0-alpha02' + androidTestImplementation 'androidx.test:runner:1.2.0' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' } From e3c39454b096e427dbb76f86260ba512bbd2811a Mon Sep 17 00:00:00 2001 From: Kim Dong Geun <37145713+ehdrms2034@users.noreply.github.com> Date: Sun, 27 Oct 2019 16:27:58 +0900 Subject: [PATCH 2/9] add horizontal mode (#18) * add horizontal mode first draft * add static horizontal mode * add horizontal mode with skicky * clean code * modify classname and clean code * bug fixed between header view and recycler view & modifyed variable name --- .../stickytimeline/JavaExampleActivity.java | 6 +- .../sangcomz/stickytimeline/MainActivity.kt | 8 +- app/src/main/res/layout/activity_main.xml | 4 +- .../HorizontalSectionItemDecoration.kt | 275 ++++++++++++++++++ .../VerticalSectionItemDecoration.kt} | 128 ++++---- .../TimeLineRecyclerView.kt | 38 ++- .../model/RecyclerViewAttr.kt | 3 +- .../res/layout/recycler_section_header.xml | 28 +- .../src/main/res/values/attrs.xml | 4 + 9 files changed, 405 insertions(+), 89 deletions(-) create mode 100644 stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt rename stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/{RecyclerSectionItemDecoration.kt => ItemDecoration/VerticalSectionItemDecoration.kt} (78%) diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java b/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java index e933a10..30d2576 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java @@ -11,7 +11,7 @@ import androidx.appcompat.content.res.AppCompatResources; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; -import xyz.sangcomz.stickytimelineview.RecyclerSectionItemDecoration; +import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration; import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView; import xyz.sangcomz.stickytimelineview.model.SectionInfo; @@ -38,8 +38,8 @@ protected void onCreate(Bundle savedInstanceState) { recyclerView.setAdapter(new SingerAdapter(getLayoutInflater(), singerList, R.layout.recycler_row)); } - private RecyclerSectionItemDecoration.SectionCallback getSectionCallback(final List singerList) { - return new RecyclerSectionItemDecoration.SectionCallback() { + private VerticalSectionItemDecoration.SectionCallback getSectionCallback(final List singerList) { + return new VerticalSectionItemDecoration.SectionCallback() { @Nullable @Override diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt index 752b35f..a2e473e 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt @@ -6,7 +6,7 @@ import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.content.res.AppCompatResources import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import xyz.sangcomz.stickytimelineview.RecyclerSectionItemDecoration +import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView import xyz.sangcomz.stickytimelineview.model.SectionInfo @@ -45,7 +45,7 @@ class MainActivity : AppCompatActivity() { val singerList = getSingerList() - //Add RecyclerSectionItemDecoration.SectionCallback + //Add VerticalSectionItemDecoration.SectionCallback recyclerView.addItemDecoration(getSectionCallback(singerList)) //Set Adapter @@ -61,8 +61,8 @@ class MainActivity : AppCompatActivity() { //Get SectionCallback method - private fun getSectionCallback(singerList: List): RecyclerSectionItemDecoration.SectionCallback { - return object : RecyclerSectionItemDecoration.SectionCallback { + private fun getSectionCallback(singerList: List): VerticalSectionItemDecoration.SectionCallback { + return object : VerticalSectionItemDecoration.SectionCallback { //In your data, implement a method to determine if this is a section. override fun isSection(position: Int): Boolean = singerList[position].debuted != singerList[position - 1].debuted diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 475f2c1..b79109f 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -10,5 +10,7 @@ android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="wrap_content" - app:isSticky="true" /> + app:isSticky="true" + app:mode="vertical" + /> diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt new file mode 100644 index 0000000..383e701 --- /dev/null +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt @@ -0,0 +1,275 @@ +package xyz.sangcomz.stickytimelineview.ItemDecoration + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.graphics.Rect +import android.graphics.drawable.Drawable +import android.graphics.drawable.GradientDrawable +import android.util.TypedValue +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.LinearLayout +import android.widget.TextView +import androidx.appcompat.widget.AppCompatImageView +import androidx.recyclerview.widget.RecyclerView +import xyz.sangcomz.stickytimelineview.R +import xyz.sangcomz.stickytimelineview.ext.DP +import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr +import xyz.sangcomz.stickytimelineview.model.SectionInfo + +class HorizontalSectionItemDecoration(context: Context, + private val sectionCallback: VerticalSectionItemDecoration.SectionCallback, + private val recyclerViewAttr: RecyclerViewAttr) : RecyclerView.ItemDecoration() { + private lateinit var headerView: View + private lateinit var headerBackground: LinearLayout + private lateinit var headerTitle: TextView + private lateinit var headerSubTitle: TextView + private lateinit var dot: AppCompatImageView + private lateinit var previousHeader: SectionInfo + + private var defaultOffset: Int = 8.DP(context).toInt() + private var headerOffset = defaultOffset * 8 + private val divisionOffset = 1.DP(context).toInt() + + private var isSameTitle = false + + override fun getItemOffsets( + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State + ) { + super.getItemOffsets( + outRect, + view, + parent, + state + ) + + outRect.top = headerOffset + divisionOffset + + val leftMargin = defaultOffset * 6 + val rightMargin = defaultOffset * 2 + + outRect.bottom = defaultOffset / 2 + outRect.left = leftMargin + outRect.right = rightMargin + + } + + + override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { + super.onDrawOver(c, parent, state) + + if (!::previousHeader.isInitialized) previousHeader = SectionInfo("") + if (!::headerView.isInitialized) getHeaderView(parent) + drawLine(c, parent) + + for (i in 0 until parent.childCount) { + val child = parent.getChildAt(i) + val position = parent.getChildAdapterPosition(child) + + if (!recyclerViewAttr.isSticky) { + if (getIsSection(position)) { + sectionCallback.getSectionHeader(position)?.let { sectionInfo -> + setHeaderView(sectionInfo) + drawHeader(c, child, headerView) + previousHeader = sectionInfo + } + } + } else { + sectionCallback.getSectionHeader(position)?.let { sectionInfo -> + if (sectionInfo.title == previousHeader.title) { + isSameTitle = true + setHeaderView(sectionInfo) + drawHeader(c, child, headerView) + previousHeader = sectionInfo + } else { + isSameTitle = false + setHeaderView(sectionInfo) + drawHeader(c, child, headerView) + previousHeader = sectionInfo + } + } + } + } + } + + /** + * Set a header view for section info. + */ + private fun setHeaderView(sectionInfo: SectionInfo) { + headerTitle.text = sectionInfo.title + setHeaderSubTitle(sectionInfo.subTitle) + setDotDrawable(sectionInfo.dotDrawable) + } + + private fun setHeaderSubTitle(sectionSubTitle: String?) { + headerSubTitle.apply { + sectionSubTitle?.let { + visibility = View.VISIBLE + text = it + } ?: kotlin.run { + visibility = View.GONE + } + } + + } + + private fun setDotDrawable(sectionDotDrawable: Drawable?) { + val dotDrawable = sectionDotDrawable ?: recyclerViewAttr.customDotDrawable + dot.background = dotDrawable ?: getOvalDrawable() + } + + /** + * Draw a line in the timeline. + */ + private fun drawLine(c: Canvas, parent: RecyclerView) { + val paint = Paint() + paint.color = recyclerViewAttr.sectionLineColor + paint.strokeWidth = recyclerViewAttr.sectionLineWidth + c.drawLines( + floatArrayOf( + 0f, + defaultOffset * 4f, + parent.width.toFloat(), + defaultOffset * 4f + ), paint + ) + } + + /** + * Returns the oval dotDrawable of the timeline. + */ + private fun getOvalDrawable(): Drawable { + val strokeWidth = defaultOffset / 2 + val roundRadius = defaultOffset * 2 + val strokeColor = recyclerViewAttr.sectionStrokeColor + val fillColor = recyclerViewAttr.sectionCircleColor + + val gd = GradientDrawable() + gd.setColor(fillColor) + gd.cornerRadius = roundRadius.toFloat() + gd.setStroke(strokeWidth, strokeColor) + + return gd + } + + /** + * Draw a header & Moving a header + */ + private fun drawHeader(c: Canvas, child: View, headerView: View) { + c.save() + val leftMargin = defaultOffset * 6 + if (recyclerViewAttr.isSticky) { + val headerTitleWidth = headerTitle.left + headerTitle.length() * headerTitle.textSize + if (!isSameTitle) { + if (child.left - leftMargin < 0) { + if (child.right + leftMargin < headerTitleWidth) + c.translate((child.right + leftMargin - headerTitleWidth), 0f) + else + c.translate(0f, 0f) + } else + c.translate((child.left - leftMargin).toFloat(), 0f) + } else c.translate(0f, 0f) + } else + c.translate((child.left - leftMargin).toFloat(), 0f) + headerView.draw(c) + c.restore() + } + + private fun getHeaderView(parent: RecyclerView) { + headerView = inflateHeaderView(parent) + headerView.apply { + headerBackground = findViewById(R.id.lin_item_background) + headerTitle = findViewById(R.id.list_item_section_title) + headerSubTitle = findViewById(R.id.list_item_section_sub_title) + dot = findViewById(R.id.dot) + recyclerViewAttr.let { attrs -> + headerBackground.apply { + setBackgroundColor(attrs.sectionBackgroundColor) + val titleTransparentLine = TextView(context) + val titleBackgroundLine = TextView(context) + titleTransparentLine.setBackgroundColor(attrs.sectionLineColor) + val width = (headerTitle.textSize * headerTitle.length().toFloat()).toInt() + addView(titleBackgroundLine, width, headerTitle.measuredHeight) + addView(titleTransparentLine, ViewGroup.LayoutParams.MATCH_PARENT, attrs.sectionLineWidth.toInt()) + } + headerTitle.apply { + setPadding(defaultOffset / 2, 0, defaultOffset / 2, 0) + setTextColor(attrs.sectionTitleTextColor) + setTextSize(TypedValue.COMPLEX_UNIT_PX, attrs.sectionTitleTextSize) + } + headerSubTitle.apply { + setPadding(defaultOffset / 2, 0, defaultOffset / 2, 0) + setTextColor(attrs.sectionSubTitleTextColor) + setTextSize(TypedValue.COMPLEX_UNIT_PX, attrs.sectionSubTitleTextSize) + } + } + fixLayoutSize(headerView, parent) + } + } + + private fun inflateHeaderView(parent: RecyclerView): View { + return LayoutInflater.from(parent.context) + .inflate( + R.layout.recycler_section_header, + parent, + false + ) + } + + /** + * Measures the headerTitle view to make sure its size is greater than 0 and will be drawn + * https://yoda.entelect.co.za/view/9627/how-to-android-recyclerview-item-decorations + */ + private fun fixLayoutSize(view: View, parent: ViewGroup) { + val widthSpec = View.MeasureSpec.makeMeasureSpec( + parent.width, + View.MeasureSpec.EXACTLY + ) + val heightSpec = View.MeasureSpec.makeMeasureSpec( + parent.height, + View.MeasureSpec.UNSPECIFIED + ) + + val childWidth = ViewGroup.getChildMeasureSpec( + widthSpec, + 0, + view.layoutParams.width + ) + val childHeight = ViewGroup.getChildMeasureSpec( + heightSpec, + 0, + view.layoutParams.height + ) + + view.measure( + childWidth, + childHeight + ) + + view.layout( + 0, + 0, + view.measuredWidth, + view.measuredHeight + ) + } + + + private fun getIsSection(position: Int): Boolean = when (position) { + 0 -> { + true + } + -1 -> { + false + } + else -> { + sectionCallback.isSection(position) + } + + } +} \ No newline at end of file diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/RecyclerSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/VerticalSectionItemDecoration.kt similarity index 78% rename from stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/RecyclerSectionItemDecoration.kt rename to stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/VerticalSectionItemDecoration.kt index c71c407..85fcb0b 100755 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/RecyclerSectionItemDecoration.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/VerticalSectionItemDecoration.kt @@ -1,4 +1,4 @@ -package xyz.sangcomz.stickytimelineview +package xyz.sangcomz.stickytimelineview.ItemDecoration import android.content.Context import android.graphics.Canvas @@ -13,6 +13,7 @@ import android.view.ViewGroup import android.widget.TextView import androidx.appcompat.widget.AppCompatImageView import androidx.recyclerview.widget.RecyclerView +import xyz.sangcomz.stickytimelineview.R import xyz.sangcomz.stickytimelineview.ext.DP import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr import xyz.sangcomz.stickytimelineview.model.SectionInfo @@ -27,10 +28,10 @@ import xyz.sangcomz.stickytimelineview.model.SectionInfo * I was inspired by his code. And I used some of his code in the library. * https://github.com/paetztm/recycler_view_headers */ -class RecyclerSectionItemDecoration( - context: Context, - private val sectionCallback: SectionCallback, - private val recyclerViewAttr: RecyclerViewAttr +class VerticalSectionItemDecoration( + context: Context, + private val sectionCallback: SectionCallback, + private val recyclerViewAttr: RecyclerViewAttr ) : RecyclerView.ItemDecoration() { private var headerView: View? = null @@ -47,16 +48,16 @@ class RecyclerSectionItemDecoration( * There is a difference in top offset between sections and not sections. */ override fun getItemOffsets( - outRect: Rect, - view: View, - parent: RecyclerView, - state: RecyclerView.State + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State ) { super.getItemOffsets( - outRect, - view, - parent, - state + outRect, + view, + parent, + state ) val pos = parent.getChildAdapterPosition(view) @@ -87,9 +88,9 @@ class RecyclerSectionItemDecoration( */ override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { super.onDrawOver( - c, - parent, - state + c, + parent, + state ) var previousHeader = SectionInfo("") if (headerView == null) getHeaderView(parent) @@ -107,11 +108,11 @@ class RecyclerSectionItemDecoration( previousHeader = sectionInfo setHeaderView(sectionInfo) val offset = - if (topChildPosition == 0 - && childInContact.top - (headerOffset * 2) == (-1 * headerOffset) - ) 0f - else - (childInContact.top - (headerOffset * 2)).toFloat() + if (topChildPosition == 0 + && childInContact.top - (headerOffset * 2) == (-1 * headerOffset) + ) 0f + else + (childInContact.top - (headerOffset * 2)).toFloat() moveHeader(c, it, offset) } @@ -141,7 +142,7 @@ class RecyclerSectionItemDecoration( private fun getHeaderView(parent: RecyclerView) { headerView = inflateHeaderView(parent) headerView?.let { headerView -> - headerBackground = headerView.findViewById(R.id.v_item_background) + headerBackground = headerView.findViewById(R.id.lin_item_background) headerTitle = headerView.findViewById(R.id.list_item_section_title) headerSubTitle = headerView.findViewById(R.id.list_item_section_sub_title) dot = headerView.findViewById(R.id.dot) @@ -198,12 +199,12 @@ class RecyclerSectionItemDecoration( paint.color = recyclerViewAttr.sectionLineColor paint.strokeWidth = recyclerViewAttr.sectionLineWidth c.drawLines( - floatArrayOf( - defaultOffset * 3f, - 0f, - defaultOffset * 3f, - parent.height.toFloat() - ), paint + floatArrayOf( + defaultOffset * 3f, + 0f, + defaultOffset * 3f, + parent.height.toFloat() + ), paint ) } @@ -211,13 +212,13 @@ class RecyclerSectionItemDecoration( * */ private fun getChildInContact(parent: RecyclerView, contactPoint: Int): View? = - (0 until parent.childCount) - .map { - parent.getChildAt(it) - } - .firstOrNull { - it.top in contactPoint / 2..contactPoint - } + (0 until parent.childCount) + .map { + parent.getChildAt(it) + } + .firstOrNull { + it.top in contactPoint / 2..contactPoint + } /** * Returns the oval dotDrawable of the timeline. @@ -254,16 +255,16 @@ class RecyclerSectionItemDecoration( c.save() if (recyclerViewAttr.isSticky) { c.translate( - 0f, - Math.max( - 0, - child.top - headerView.height - ).toFloat() + 0f, + Math.max( + 0, + child.top - headerView.height + ).toFloat() ) } else { c.translate( - 0f, - (child.top - headerView.height).toFloat() + 0f, + (child.top - headerView.height).toFloat() ) } headerView.draw(c) @@ -272,11 +273,11 @@ class RecyclerSectionItemDecoration( private fun inflateHeaderView(parent: RecyclerView): View { return LayoutInflater.from(parent.context) - .inflate( - R.layout.recycler_section_header, - parent, - false - ) + .inflate( + R.layout.recycler_section_header, + parent, + false + ) } /** @@ -285,35 +286,35 @@ class RecyclerSectionItemDecoration( */ private fun fixLayoutSize(view: View, parent: ViewGroup) { val widthSpec = View.MeasureSpec.makeMeasureSpec( - parent.width, - View.MeasureSpec.EXACTLY + parent.width, + View.MeasureSpec.EXACTLY ) val heightSpec = View.MeasureSpec.makeMeasureSpec( - parent.height, - View.MeasureSpec.UNSPECIFIED + parent.height, + View.MeasureSpec.UNSPECIFIED ) val childWidth = ViewGroup.getChildMeasureSpec( - widthSpec, - parent.paddingLeft + parent.paddingRight, - view.layoutParams.width + widthSpec, + parent.paddingLeft + parent.paddingRight, + view.layoutParams.width ) val childHeight = ViewGroup.getChildMeasureSpec( - heightSpec, - parent.paddingTop + parent.paddingBottom, - view.layoutParams.height + heightSpec, + parent.paddingTop + parent.paddingBottom, + view.layoutParams.height ) view.measure( - childWidth, - childHeight + childWidth, + childHeight ) view.layout( - 0, - 0, - view.measuredWidth, - view.measuredHeight + 0, + 0, + view.measuredWidth, + view.measuredHeight ) } @@ -333,7 +334,6 @@ class RecyclerSectionItemDecoration( } - /** * Section-specific callback interface */ diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt index a359774..3f994a5 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt @@ -4,6 +4,8 @@ import android.content.Context import android.util.AttributeSet import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView +import xyz.sangcomz.stickytimelineview.ItemDecoration.HorizontalSectionItemDecoration +import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr @@ -27,6 +29,11 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie private var recyclerViewAttr: RecyclerViewAttr? = null + companion object{ + private const val MODE_VERTICAL = 0x00 + private const val MODE_HORIZONTAL = 0x01 + } + init { attrs?.let { val a = context?.theme?.obtainStyledAttributes( @@ -55,22 +62,41 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie it.getDimension(R.styleable.TimeLineRecyclerView_timeLineWidth, context.resources.getDimension(R.dimen.line_width)), it.getBoolean(R.styleable.TimeLineRecyclerView_isSticky, true), - it.getDrawable(R.styleable.TimeLineRecyclerView_customDotDrawable)) + it.getDrawable(R.styleable.TimeLineRecyclerView_customDotDrawable), + it.getInt(R.styleable.TimeLineRecyclerView_mode, 0)) + } } } /** - * Add RecyclerSectionItemDecoration for Sticky TimeLineView + * Add VerticalSectionItemDecoration for Sticky TimeLineView * * @param callback SectionCallback + * if you'd like to know more mode , look at res/values/attrs.xml */ - fun addItemDecoration(callback: RecyclerSectionItemDecoration.SectionCallback) { + fun addItemDecoration(callback: VerticalSectionItemDecoration.SectionCallback) { recyclerViewAttr?.let { - this.addItemDecoration(RecyclerSectionItemDecoration(context, - callback, - it)) + val decoration: ItemDecoration = + when (it.mode) { + MODE_VERTICAL -> { + VerticalSectionItemDecoration(context, + callback, + it) + } + MODE_HORIZONTAL -> { + HorizontalSectionItemDecoration(context, + callback, + it) + } + else -> { + VerticalSectionItemDecoration(context, + callback, + it) + } + } + this.addItemDecoration(decoration) } } } \ No newline at end of file diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt index a8807ba..0aeec58 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt @@ -15,5 +15,6 @@ data class RecyclerViewAttr(val sectionBackgroundColor: Int, val sectionSubTitleTextSize: Float, val sectionLineWidth: Float, val isSticky: Boolean, - val customDotDrawable: Drawable? + val customDotDrawable: Drawable?, + val mode : Int ) \ No newline at end of file diff --git a/stickytimelineview/src/main/res/layout/recycler_section_header.xml b/stickytimelineview/src/main/res/layout/recycler_section_header.xml index 9cc40bd..94ff0a3 100755 --- a/stickytimelineview/src/main/res/layout/recycler_section_header.xml +++ b/stickytimelineview/src/main/res/layout/recycler_section_header.xml @@ -4,7 +4,8 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="@dimen/recycler_section_header_height" - android:paddingLeft="@dimen/header_padding_left"> + android:paddingLeft="@dimen/header_padding_left" + > - + app:layout_constraintTop_toTopOf="parent" + /> + android:text="Title" + android:textSize="@dimen/title_text_size" + /> + android:text="Sub Title" + android:textSize="@dimen/title_text_size" + /> diff --git a/stickytimelineview/src/main/res/values/attrs.xml b/stickytimelineview/src/main/res/values/attrs.xml index ca4c5cc..0475f06 100644 --- a/stickytimelineview/src/main/res/values/attrs.xml +++ b/stickytimelineview/src/main/res/values/attrs.xml @@ -14,5 +14,9 @@ + + + + \ No newline at end of file From 3737b01137c87ff80aa42cf226f62955605d0d04 Mon Sep 17 00:00:00 2001 From: sangcomz Date: Sun, 24 Nov 2019 14:50:25 +0900 Subject: [PATCH 3/9] Fix sample app for horizontal mode and fix HorizontalSectionItemDecoration (ing) --- .../stickytimeline/JavaExampleActivity.java | 13 +- .../sangcomz/stickytimeline/MainActivity.kt | 40 +++-- app/src/main/res/layout/activity_main.xml | 26 +++- .../res/layout/recycler_horizontal_row.xml | 14 ++ ...cler_row.xml => recycler_vertical_row.xml} | 0 build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 +- .../HorizontalSectionItemDecoration.kt | 140 ++++++++++-------- 8 files changed, 155 insertions(+), 84 deletions(-) create mode 100755 app/src/main/res/layout/recycler_horizontal_row.xml rename app/src/main/res/layout/{recycler_row.xml => recycler_vertical_row.xml} (100%) diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java b/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java index 30d2576..8012a4e 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java @@ -3,14 +3,15 @@ import android.graphics.drawable.Drawable; import android.os.Bundle; -import org.jetbrains.annotations.Nullable; - -import java.util.List; - import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.content.res.AppCompatResources; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; + +import org.jetbrains.annotations.Nullable; + +import java.util.List; + import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration; import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView; import xyz.sangcomz.stickytimelineview.model.SectionInfo; @@ -25,7 +26,7 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_main); initDrawable(); - TimeLineRecyclerView recyclerView = findViewById(R.id.recycler_view); + TimeLineRecyclerView recyclerView = findViewById(R.id.vertical_recycler_view); recyclerView.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, @@ -35,7 +36,7 @@ protected void onCreate(Bundle savedInstanceState) { recyclerView.addItemDecoration(getSectionCallback(singerList)); - recyclerView.setAdapter(new SingerAdapter(getLayoutInflater(), singerList, R.layout.recycler_row)); + recyclerView.setAdapter(new SingerAdapter(getLayoutInflater(), singerList, R.layout.recycler_vertical_row)); } private VerticalSectionItemDecoration.SectionCallback getSectionCallback(final List singerList) { diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt index a2e473e..71309c2 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt @@ -6,8 +6,8 @@ import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.content.res.AppCompatResources import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import kotlinx.android.synthetic.main.activity_main.* import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration -import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView import xyz.sangcomz.stickytimelineview.model.SectionInfo class MainActivity : AppCompatActivity() { @@ -28,32 +28,48 @@ class MainActivity : AppCompatActivity() { AppCompatResources.getDrawable(this@MainActivity, R.drawable.ic_solo) } + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) + initVerticalRecyclerView() + initHorizontalRecyclerView() + } - val recyclerView: TimeLineRecyclerView = findViewById(R.id.recycler_view) + private fun initVerticalRecyclerView() { + val singerList = getSingerList() + vertical_recycler_view.adapter = SingerAdapter( + layoutInflater, + singerList, + R.layout.recycler_vertical_row + ) //Currently only LinearLayoutManager is supported. - recyclerView.layoutManager = LinearLayoutManager( + vertical_recycler_view.layoutManager = LinearLayoutManager( this, RecyclerView.VERTICAL, false ) - //Get data - val singerList = getSingerList() - - - //Add VerticalSectionItemDecoration.SectionCallback - recyclerView.addItemDecoration(getSectionCallback(singerList)) + vertical_recycler_view.addItemDecoration(getSectionCallback(singerList)) + } - //Set Adapter - recyclerView.adapter = SingerAdapter( + private fun initHorizontalRecyclerView() { + val singerList = getSingerList() + horizontal_recycler_view.adapter = SingerAdapter( layoutInflater, singerList, - R.layout.recycler_row + R.layout.recycler_horizontal_row + ) + + //Currently only LinearLayoutManager is supported. + horizontal_recycler_view.layoutManager = LinearLayoutManager( + this, + RecyclerView.HORIZONTAL, + false ) + + horizontal_recycler_view.addItemDecoration(getSectionCallback(singerList)) } //Get data method diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index b79109f..003f300 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -7,10 +7,26 @@ tools:context="xyz.sangcomz.stickytimeline.MainActivity"> + app:layout_constraintBottom_toTopOf="@+id/horizontal_recycler_view" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.5" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" + app:mode="vertical" /> + + diff --git a/app/src/main/res/layout/recycler_horizontal_row.xml b/app/src/main/res/layout/recycler_horizontal_row.xml new file mode 100755 index 0000000..006ac94 --- /dev/null +++ b/app/src/main/res/layout/recycler_horizontal_row.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/app/src/main/res/layout/recycler_row.xml b/app/src/main/res/layout/recycler_vertical_row.xml similarity index 100% rename from app/src/main/res/layout/recycler_row.xml rename to app/src/main/res/layout/recycler_vertical_row.xml diff --git a/build.gradle b/build.gradle index 89e84f9..47ef2d1 100644 --- a/build.gradle +++ b/build.gradle @@ -13,7 +13,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.4.1' + classpath 'com.android.tools.build:gradle:3.5.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' // NOTE: Do not place your application dependencies here; they belong diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c2c7eef..8cb47d7 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Thu Jun 06 15:55:23 KST 2019 +#Sun Nov 24 14:08:11 KST 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt index 383e701..c67eb64 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt @@ -19,9 +19,15 @@ import xyz.sangcomz.stickytimelineview.ext.DP import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr import xyz.sangcomz.stickytimelineview.model.SectionInfo -class HorizontalSectionItemDecoration(context: Context, - private val sectionCallback: VerticalSectionItemDecoration.SectionCallback, - private val recyclerViewAttr: RecyclerViewAttr) : RecyclerView.ItemDecoration() { + +//section Header인지 체크하는 로직 수정 +//움직이는 헤더 동작 구현 + +class HorizontalSectionItemDecoration( + context: Context, + private val sectionCallback: VerticalSectionItemDecoration.SectionCallback, + private val recyclerViewAttr: RecyclerViewAttr +) : RecyclerView.ItemDecoration() { private lateinit var headerView: View private lateinit var headerBackground: LinearLayout private lateinit var headerTitle: TextView @@ -33,25 +39,23 @@ class HorizontalSectionItemDecoration(context: Context, private var headerOffset = defaultOffset * 8 private val divisionOffset = 1.DP(context).toInt() - private var isSameTitle = false - override fun getItemOffsets( - outRect: Rect, - view: View, - parent: RecyclerView, - state: RecyclerView.State + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State ) { super.getItemOffsets( - outRect, - view, - parent, - state + outRect, + view, + parent, + state ) outRect.top = headerOffset + divisionOffset - val leftMargin = defaultOffset * 6 - val rightMargin = defaultOffset * 2 + val leftMargin = defaultOffset + val rightMargin = defaultOffset outRect.bottom = defaultOffset / 2 outRect.left = leftMargin @@ -62,7 +66,6 @@ class HorizontalSectionItemDecoration(context: Context, override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { super.onDrawOver(c, parent, state) - if (!::previousHeader.isInitialized) previousHeader = SectionInfo("") if (!::headerView.isInitialized) getHeaderView(parent) drawLine(c, parent) @@ -82,12 +85,18 @@ class HorizontalSectionItemDecoration(context: Context, } else { sectionCallback.getSectionHeader(position)?.let { sectionInfo -> if (sectionInfo.title == previousHeader.title) { - isSameTitle = true - setHeaderView(sectionInfo) - drawHeader(c, child, headerView) +// setHeaderView(sectionInfo) +// drawHeader(c, child, headerView) +// val offset = +// if (topChildPosition == 0 +// && childInContact.top - (headerOffset * 2) == (-1 * headerOffset) +// ) 0f +// else +// (childInContact.top - (headerOffset * 2)).toFloat() + + moveHeader(c, headerView, 10f) previousHeader = sectionInfo } else { - isSameTitle = false setHeaderView(sectionInfo) drawHeader(c, child, headerView) previousHeader = sectionInfo @@ -131,12 +140,12 @@ class HorizontalSectionItemDecoration(context: Context, paint.color = recyclerViewAttr.sectionLineColor paint.strokeWidth = recyclerViewAttr.sectionLineWidth c.drawLines( - floatArrayOf( - 0f, - defaultOffset * 4f, - parent.width.toFloat(), - defaultOffset * 4f - ), paint + floatArrayOf( + 0f, + defaultOffset * 4f, + parent.width.toFloat(), + defaultOffset * 4f + ), paint ) } @@ -162,24 +171,35 @@ class HorizontalSectionItemDecoration(context: Context, */ private fun drawHeader(c: Canvas, child: View, headerView: View) { c.save() - val leftMargin = defaultOffset * 6 + val leftMargin = defaultOffset * 2 if (recyclerViewAttr.isSticky) { val headerTitleWidth = headerTitle.left + headerTitle.length() * headerTitle.textSize - if (!isSameTitle) { - if (child.left - leftMargin < 0) { - if (child.right + leftMargin < headerTitleWidth) - c.translate((child.right + leftMargin - headerTitleWidth), 0f) - else - c.translate(0f, 0f) - } else - c.translate((child.left - leftMargin).toFloat(), 0f) - } else c.translate(0f, 0f) +// if (!isSameTitle) { + if (child.left - leftMargin < 0) { + if (child.right + leftMargin < headerTitleWidth) + c.translate((child.right + leftMargin - headerTitleWidth), 0f) + else + c.translate(0f, 0f) + } else + c.translate((child.left - leftMargin).toFloat(), 0f) +// } else c.translate(0f, 0f) } else c.translate((child.left - leftMargin).toFloat(), 0f) headerView.draw(c) c.restore() } + /** + * Moving parts when headers meet + */ + private fun moveHeader(c: Canvas, topHeader: View, offset: Float) { + if (!recyclerViewAttr.isSticky) return + c.save() + c.translate(0f, offset) + topHeader.draw(c) + c.restore() + } + private fun getHeaderView(parent: RecyclerView) { headerView = inflateHeaderView(parent) headerView.apply { @@ -195,7 +215,11 @@ class HorizontalSectionItemDecoration(context: Context, titleTransparentLine.setBackgroundColor(attrs.sectionLineColor) val width = (headerTitle.textSize * headerTitle.length().toFloat()).toInt() addView(titleBackgroundLine, width, headerTitle.measuredHeight) - addView(titleTransparentLine, ViewGroup.LayoutParams.MATCH_PARENT, attrs.sectionLineWidth.toInt()) + addView( + titleTransparentLine, + ViewGroup.LayoutParams.MATCH_PARENT, + attrs.sectionLineWidth.toInt() + ) } headerTitle.apply { setPadding(defaultOffset / 2, 0, defaultOffset / 2, 0) @@ -214,11 +238,11 @@ class HorizontalSectionItemDecoration(context: Context, private fun inflateHeaderView(parent: RecyclerView): View { return LayoutInflater.from(parent.context) - .inflate( - R.layout.recycler_section_header, - parent, - false - ) + .inflate( + R.layout.recycler_section_header, + parent, + false + ) } /** @@ -227,35 +251,35 @@ class HorizontalSectionItemDecoration(context: Context, */ private fun fixLayoutSize(view: View, parent: ViewGroup) { val widthSpec = View.MeasureSpec.makeMeasureSpec( - parent.width, - View.MeasureSpec.EXACTLY + parent.width, + View.MeasureSpec.EXACTLY ) val heightSpec = View.MeasureSpec.makeMeasureSpec( - parent.height, - View.MeasureSpec.UNSPECIFIED + parent.height, + View.MeasureSpec.UNSPECIFIED ) val childWidth = ViewGroup.getChildMeasureSpec( - widthSpec, - 0, - view.layoutParams.width + widthSpec, + 0, + view.layoutParams.width ) val childHeight = ViewGroup.getChildMeasureSpec( - heightSpec, - 0, - view.layoutParams.height + heightSpec, + 0, + view.layoutParams.height ) view.measure( - childWidth, - childHeight + childWidth, + childHeight ) view.layout( - 0, - 0, - view.measuredWidth, - view.measuredHeight + 0, + 0, + view.measuredWidth, + view.measuredHeight ) } From e530d1bf88e340a7da779a330b1ecfee96609c9c Mon Sep 17 00:00:00 2001 From: sangcomz Date: Sun, 6 Sep 2020 02:42:27 +0900 Subject: [PATCH 4/9] fix horizontal mode --- app/build.gradle | 14 +- .../stickytimeline/JavaExampleActivity.java | 6 +- .../sangcomz/stickytimeline/MainActivity.kt | 7 +- .../xyz/sangcomz/stickytimeline/SingerRepo.kt | 44 +-- app/src/main/res/drawable/ic_solo.xml | 17 +- app/src/main/res/layout/activity_main.xml | 55 +++- .../res/layout/recycler_horizontal_row.xml | 2 +- build.gradle | 7 +- gradle/wrapper/gradle-wrapper.properties | 4 +- stickytimelineview/build.gradle | 10 +- .../HorizontalSectionItemDecoration.kt | 299 ------------------ .../TimeLineRecyclerView.kt | 119 ++++--- .../callback/SectionCallback.kt | 15 + .../HorizontalSectionItemDecoration.kt | 238 ++++++++++++++ .../VerticalSectionItemDecoration.kt | 140 ++++---- .../res/layout/recycler_section_header.xml | 27 +- .../src/main/res/values/attrs.xml | 6 +- 17 files changed, 505 insertions(+), 505 deletions(-) delete mode 100644 stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt create mode 100644 stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/callback/SectionCallback.kt create mode 100644 stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt rename stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/{ItemDecoration => decoration}/VerticalSectionItemDecoration.kt (76%) diff --git a/app/build.gradle b/app/build.gradle index 03d6822..19f76f9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -44,15 +44,15 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation "androidx.appcompat:appcompat:$androidx_version" + implementation "androidx.appcompat:appcompat:1.2.0" implementation "androidx.constraintlayout:constraintlayout:$constraint_version" - implementation "androidx.recyclerview:recyclerview:$androidx_version" + implementation "androidx.recyclerview:recyclerview:1.1.0" implementation 'androidx.cardview:cardview:1.0.0' implementation project(':stickytimelineview') - implementation "androidx.appcompat:appcompat:$androidx_version" - implementation 'androidx.constraintlayout:constraintlayout:1.1.3' - testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test:runner:1.2.0' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' + implementation "androidx.appcompat:appcompat:1.2.0" + implementation 'androidx.constraintlayout:constraintlayout:2.0.1' + testImplementation 'junit:junit:4.13' + androidTestImplementation 'androidx.test:runner:1.3.0' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' } diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java b/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java index 8012a4e..8ccddf9 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/JavaExampleActivity.java @@ -12,8 +12,8 @@ import java.util.List; -import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration; import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView; +import xyz.sangcomz.stickytimelineview.callback.SectionCallback; import xyz.sangcomz.stickytimelineview.model.SectionInfo; public class JavaExampleActivity extends AppCompatActivity { @@ -39,8 +39,8 @@ protected void onCreate(Bundle savedInstanceState) { recyclerView.setAdapter(new SingerAdapter(getLayoutInflater(), singerList, R.layout.recycler_vertical_row)); } - private VerticalSectionItemDecoration.SectionCallback getSectionCallback(final List singerList) { - return new VerticalSectionItemDecoration.SectionCallback() { + private SectionCallback getSectionCallback(final List singerList) { + return new SectionCallback() { @Nullable @Override diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt index 71309c2..3d6ac25 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt @@ -7,7 +7,8 @@ import androidx.appcompat.content.res.AppCompatResources import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import kotlinx.android.synthetic.main.activity_main.* -import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration +import xyz.sangcomz.stickytimelineview.callback.SectionCallback +import xyz.sangcomz.stickytimelineview.decoration.VerticalSectionItemDecoration import xyz.sangcomz.stickytimelineview.model.SectionInfo class MainActivity : AppCompatActivity() { @@ -77,8 +78,8 @@ class MainActivity : AppCompatActivity() { //Get SectionCallback method - private fun getSectionCallback(singerList: List): VerticalSectionItemDecoration.SectionCallback { - return object : VerticalSectionItemDecoration.SectionCallback { + private fun getSectionCallback(singerList: List): SectionCallback { + return object : SectionCallback { //In your data, implement a method to determine if this is a section. override fun isSection(position: Int): Boolean = singerList[position].debuted != singerList[position - 1].debuted diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/SingerRepo.kt b/app/src/main/java/xyz/sangcomz/stickytimeline/SingerRepo.kt index cbc3386..77dd86e 100755 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/SingerRepo.kt +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/SingerRepo.kt @@ -11,23 +11,23 @@ class SingerRepo { val singerList: List get() { val singerList = ArrayList() - singerList.add(Singer("Solo", "1995.04", "Lim Chang Jung")) + singerList.add(Singer("Solo", "1995.04", "Lim ChangJung")) singerList.add(Singer("FIN.K.L", "1998.05", "Lee Jin")) - singerList.add(Singer("FIN.K.L", "1998.05", "Sung Yu Ri")) - singerList.add(Singer("FIN.K.L", "1998.05", "Oak Joo Hyun")) - singerList.add(Singer("FIN.K.L", "1998.05", "Lee Hyo Ri")) + singerList.add(Singer("FIN.K.L", "1998.05", "Sung YuRi")) + singerList.add(Singer("FIN.K.L", "1998.05", "Oak JooHyun")) + singerList.add(Singer("FIN.K.L", "1998.05", "Lee HyoRi")) - singerList.add(Singer("Solo", "1999.04", "Kim Bumsoo")) + singerList.add(Singer("Solo", "1999.04", "Kim BumSoo")) - singerList.add(Singer("Solo", "1999.11", "Park Hyo Shin")) - singerList.add(Singer("Solo", "1999.11", "Lee Soo Young")) - singerList.add(Singer("Solo", "2000.11", "Sung Si Kyung")) + singerList.add(Singer("Solo", "1999.11", "Park HyoShin")) + singerList.add(Singer("Solo", "1999.11", "Lee SooYoung")) + singerList.add(Singer("Solo", "2000.11", "Sung SiKyung")) singerList.add(Singer("Buzz", "2003.10", "Kim Yeah")) - singerList.add(Singer("Buzz", "2003.10", "Yun Woo Hyun")) - singerList.add(Singer("Buzz", "2003.10", "Sin Jun Ki")) - singerList.add(Singer("Buzz", "2003.10", "Min Kyung Hoon")) + singerList.add(Singer("Buzz", "2003.10", "Yun WooHyun")) + singerList.add(Singer("Buzz", "2003.10", "Sin JunKi")) + singerList.add(Singer("Buzz", "2003.10", "Min KyungHoon")) singerList.add(Singer("Solo", "2006.06", "Yunha")) @@ -42,17 +42,17 @@ class SingerRepo { singerList.add(Singer("Wanna One", "2017.08", "Kang Daniel")) singerList.add(Singer("Wanna One", "2017.08", "Lai Kuan Lin")) - singerList.add(Singer("Wanna One", "2017.08", "Ong Seong Wu")) - singerList.add(Singer("Wanna One", "2017.08", "Ha Sung Woon")) - singerList.add(Singer("Wanna One", "2017.08", "Yoon Ji Sung")) - singerList.add(Singer("Wanna One", "2017.08", "Park Woo Jin")) - singerList.add(Singer("Wanna One", "2017.08", "Lee Dae Hwi")) - singerList.add(Singer("Wanna One", "2017.08", "Kim Jae Hwan")) - singerList.add(Singer("Wanna One", "2017.08", "Bae Jin Young")) - singerList.add(Singer("Wanna One", "2017.08", "Hwang Min Hyun")) - singerList.add(Singer("Wanna One", "2017.08", "Park Ji Hoon")) - - singerList.add(Singer("Solo", "2017.11", "Woo Won Jae")) + singerList.add(Singer("Wanna One", "2017.08", "Ong SeongWu")) + singerList.add(Singer("Wanna One", "2017.08", "Ha SungWoon")) + singerList.add(Singer("Wanna One", "2017.08", "Yoon JiSung")) + singerList.add(Singer("Wanna One", "2017.08", "Park WooJin")) + singerList.add(Singer("Wanna One", "2017.08", "Lee DaeHwi")) + singerList.add(Singer("Wanna One", "2017.08", "Kim JaeHwan")) + singerList.add(Singer("Wanna One", "2017.08", "Bae JinYoung")) + singerList.add(Singer("Wanna One", "2017.08", "Hwang MinHyun")) + singerList.add(Singer("Wanna One", "2017.08", "Park JiHoon")) + + singerList.add(Singer("Solo", "2017.11", "Woo WonJae")) return singerList } diff --git a/app/src/main/res/drawable/ic_solo.xml b/app/src/main/res/drawable/ic_solo.xml index cb10b5f..0341836 100644 --- a/app/src/main/res/drawable/ic_solo.xml +++ b/app/src/main/res/drawable/ic_solo.xml @@ -1,7 +1,14 @@ - - + - + android:strokeWidth="10" + android:strokeColor="#F9F9F9" /> + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 003f300..1860c89 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -6,17 +6,57 @@ android:layout_height="match_parent" tools:context="xyz.sangcomz.stickytimeline.MainActivity"> + + + app:layout_constraintTop_toBottomOf="@id/vertical_text_view" + app:timeLineMode="vertical" /> + + + + + app:layout_constraintTop_toBottomOf="@+id/horizontal_text_view" + app:timeLineMode="horizontal" /> + + diff --git a/app/src/main/res/layout/recycler_horizontal_row.xml b/app/src/main/res/layout/recycler_horizontal_row.xml index 006ac94..45b8372 100755 --- a/app/src/main/res/layout/recycler_horizontal_row.xml +++ b/app/src/main/res/layout/recycler_horizontal_row.xml @@ -6,7 +6,7 @@ diff --git a/build.gradle b/build.gradle index 47ef2d1..dab7543 100644 --- a/build.gradle +++ b/build.gradle @@ -3,9 +3,8 @@ buildscript { ext { - androidx_version = '1.1.0-alpha05' - kotlin_version = '1.3.31' - constraint_version = '1.1.3' + kotlin_version = '1.3.72' + constraint_version = '2.0.1' } repositories { @@ -13,7 +12,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.2' + classpath 'com.android.tools.build:gradle:4.0.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' // NOTE: Do not place your application dependencies here; they belong diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8cb47d7..2f36f39 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun Nov 24 14:08:11 KST 2019 +#Mon Aug 10 23:14:19 KST 2020 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip diff --git a/stickytimelineview/build.gradle b/stickytimelineview/build.gradle index d9bc72e..769e61b 100644 --- a/stickytimelineview/build.gradle +++ b/stickytimelineview/build.gradle @@ -31,12 +31,12 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation 'androidx.appcompat:appcompat:1.1.0-alpha05' - compile 'androidx.recyclerview:recyclerview:1.1.0-alpha06' + implementation 'androidx.appcompat:appcompat:1.2.0' + compile 'androidx.recyclerview:recyclerview:1.1.0' compile "androidx.constraintlayout:constraintlayout:$constraint_version" - testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test:runner:1.2.0' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' + testImplementation 'junit:junit:4.13' + androidTestImplementation 'androidx.test:runner:1.3.0' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' } diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt deleted file mode 100644 index c67eb64..0000000 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/HorizontalSectionItemDecoration.kt +++ /dev/null @@ -1,299 +0,0 @@ -package xyz.sangcomz.stickytimelineview.ItemDecoration - -import android.content.Context -import android.graphics.Canvas -import android.graphics.Paint -import android.graphics.Rect -import android.graphics.drawable.Drawable -import android.graphics.drawable.GradientDrawable -import android.util.TypedValue -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.LinearLayout -import android.widget.TextView -import androidx.appcompat.widget.AppCompatImageView -import androidx.recyclerview.widget.RecyclerView -import xyz.sangcomz.stickytimelineview.R -import xyz.sangcomz.stickytimelineview.ext.DP -import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr -import xyz.sangcomz.stickytimelineview.model.SectionInfo - - -//section Header인지 체크하는 로직 수정 -//움직이는 헤더 동작 구현 - -class HorizontalSectionItemDecoration( - context: Context, - private val sectionCallback: VerticalSectionItemDecoration.SectionCallback, - private val recyclerViewAttr: RecyclerViewAttr -) : RecyclerView.ItemDecoration() { - private lateinit var headerView: View - private lateinit var headerBackground: LinearLayout - private lateinit var headerTitle: TextView - private lateinit var headerSubTitle: TextView - private lateinit var dot: AppCompatImageView - private lateinit var previousHeader: SectionInfo - - private var defaultOffset: Int = 8.DP(context).toInt() - private var headerOffset = defaultOffset * 8 - private val divisionOffset = 1.DP(context).toInt() - - override fun getItemOffsets( - outRect: Rect, - view: View, - parent: RecyclerView, - state: RecyclerView.State - ) { - super.getItemOffsets( - outRect, - view, - parent, - state - ) - - outRect.top = headerOffset + divisionOffset - - val leftMargin = defaultOffset - val rightMargin = defaultOffset - - outRect.bottom = defaultOffset / 2 - outRect.left = leftMargin - outRect.right = rightMargin - - } - - - override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { - super.onDrawOver(c, parent, state) - if (!::previousHeader.isInitialized) previousHeader = SectionInfo("") - if (!::headerView.isInitialized) getHeaderView(parent) - drawLine(c, parent) - - for (i in 0 until parent.childCount) { - val child = parent.getChildAt(i) - val position = parent.getChildAdapterPosition(child) - - if (!recyclerViewAttr.isSticky) { - if (getIsSection(position)) { - sectionCallback.getSectionHeader(position)?.let { sectionInfo -> - setHeaderView(sectionInfo) - drawHeader(c, child, headerView) - previousHeader = sectionInfo - } - } - } else { - sectionCallback.getSectionHeader(position)?.let { sectionInfo -> - if (sectionInfo.title == previousHeader.title) { -// setHeaderView(sectionInfo) -// drawHeader(c, child, headerView) -// val offset = -// if (topChildPosition == 0 -// && childInContact.top - (headerOffset * 2) == (-1 * headerOffset) -// ) 0f -// else -// (childInContact.top - (headerOffset * 2)).toFloat() - - moveHeader(c, headerView, 10f) - previousHeader = sectionInfo - } else { - setHeaderView(sectionInfo) - drawHeader(c, child, headerView) - previousHeader = sectionInfo - } - } - } - } - } - - /** - * Set a header view for section info. - */ - private fun setHeaderView(sectionInfo: SectionInfo) { - headerTitle.text = sectionInfo.title - setHeaderSubTitle(sectionInfo.subTitle) - setDotDrawable(sectionInfo.dotDrawable) - } - - private fun setHeaderSubTitle(sectionSubTitle: String?) { - headerSubTitle.apply { - sectionSubTitle?.let { - visibility = View.VISIBLE - text = it - } ?: kotlin.run { - visibility = View.GONE - } - } - - } - - private fun setDotDrawable(sectionDotDrawable: Drawable?) { - val dotDrawable = sectionDotDrawable ?: recyclerViewAttr.customDotDrawable - dot.background = dotDrawable ?: getOvalDrawable() - } - - /** - * Draw a line in the timeline. - */ - private fun drawLine(c: Canvas, parent: RecyclerView) { - val paint = Paint() - paint.color = recyclerViewAttr.sectionLineColor - paint.strokeWidth = recyclerViewAttr.sectionLineWidth - c.drawLines( - floatArrayOf( - 0f, - defaultOffset * 4f, - parent.width.toFloat(), - defaultOffset * 4f - ), paint - ) - } - - /** - * Returns the oval dotDrawable of the timeline. - */ - private fun getOvalDrawable(): Drawable { - val strokeWidth = defaultOffset / 2 - val roundRadius = defaultOffset * 2 - val strokeColor = recyclerViewAttr.sectionStrokeColor - val fillColor = recyclerViewAttr.sectionCircleColor - - val gd = GradientDrawable() - gd.setColor(fillColor) - gd.cornerRadius = roundRadius.toFloat() - gd.setStroke(strokeWidth, strokeColor) - - return gd - } - - /** - * Draw a header & Moving a header - */ - private fun drawHeader(c: Canvas, child: View, headerView: View) { - c.save() - val leftMargin = defaultOffset * 2 - if (recyclerViewAttr.isSticky) { - val headerTitleWidth = headerTitle.left + headerTitle.length() * headerTitle.textSize -// if (!isSameTitle) { - if (child.left - leftMargin < 0) { - if (child.right + leftMargin < headerTitleWidth) - c.translate((child.right + leftMargin - headerTitleWidth), 0f) - else - c.translate(0f, 0f) - } else - c.translate((child.left - leftMargin).toFloat(), 0f) -// } else c.translate(0f, 0f) - } else - c.translate((child.left - leftMargin).toFloat(), 0f) - headerView.draw(c) - c.restore() - } - - /** - * Moving parts when headers meet - */ - private fun moveHeader(c: Canvas, topHeader: View, offset: Float) { - if (!recyclerViewAttr.isSticky) return - c.save() - c.translate(0f, offset) - topHeader.draw(c) - c.restore() - } - - private fun getHeaderView(parent: RecyclerView) { - headerView = inflateHeaderView(parent) - headerView.apply { - headerBackground = findViewById(R.id.lin_item_background) - headerTitle = findViewById(R.id.list_item_section_title) - headerSubTitle = findViewById(R.id.list_item_section_sub_title) - dot = findViewById(R.id.dot) - recyclerViewAttr.let { attrs -> - headerBackground.apply { - setBackgroundColor(attrs.sectionBackgroundColor) - val titleTransparentLine = TextView(context) - val titleBackgroundLine = TextView(context) - titleTransparentLine.setBackgroundColor(attrs.sectionLineColor) - val width = (headerTitle.textSize * headerTitle.length().toFloat()).toInt() - addView(titleBackgroundLine, width, headerTitle.measuredHeight) - addView( - titleTransparentLine, - ViewGroup.LayoutParams.MATCH_PARENT, - attrs.sectionLineWidth.toInt() - ) - } - headerTitle.apply { - setPadding(defaultOffset / 2, 0, defaultOffset / 2, 0) - setTextColor(attrs.sectionTitleTextColor) - setTextSize(TypedValue.COMPLEX_UNIT_PX, attrs.sectionTitleTextSize) - } - headerSubTitle.apply { - setPadding(defaultOffset / 2, 0, defaultOffset / 2, 0) - setTextColor(attrs.sectionSubTitleTextColor) - setTextSize(TypedValue.COMPLEX_UNIT_PX, attrs.sectionSubTitleTextSize) - } - } - fixLayoutSize(headerView, parent) - } - } - - private fun inflateHeaderView(parent: RecyclerView): View { - return LayoutInflater.from(parent.context) - .inflate( - R.layout.recycler_section_header, - parent, - false - ) - } - - /** - * Measures the headerTitle view to make sure its size is greater than 0 and will be drawn - * https://yoda.entelect.co.za/view/9627/how-to-android-recyclerview-item-decorations - */ - private fun fixLayoutSize(view: View, parent: ViewGroup) { - val widthSpec = View.MeasureSpec.makeMeasureSpec( - parent.width, - View.MeasureSpec.EXACTLY - ) - val heightSpec = View.MeasureSpec.makeMeasureSpec( - parent.height, - View.MeasureSpec.UNSPECIFIED - ) - - val childWidth = ViewGroup.getChildMeasureSpec( - widthSpec, - 0, - view.layoutParams.width - ) - val childHeight = ViewGroup.getChildMeasureSpec( - heightSpec, - 0, - view.layoutParams.height - ) - - view.measure( - childWidth, - childHeight - ) - - view.layout( - 0, - 0, - view.measuredWidth, - view.measuredHeight - ) - } - - - private fun getIsSection(position: Int): Boolean = when (position) { - 0 -> { - true - } - -1 -> { - false - } - else -> { - sectionCallback.isSection(position) - } - - } -} \ No newline at end of file diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt index 3f994a5..e5a5d1e 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt @@ -4,8 +4,9 @@ import android.content.Context import android.util.AttributeSet import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView -import xyz.sangcomz.stickytimelineview.ItemDecoration.HorizontalSectionItemDecoration -import xyz.sangcomz.stickytimelineview.ItemDecoration.VerticalSectionItemDecoration +import xyz.sangcomz.stickytimelineview.callback.SectionCallback +import xyz.sangcomz.stickytimelineview.decoration.HorizontalSectionItemDecoration +import xyz.sangcomz.stickytimelineview.decoration.VerticalSectionItemDecoration import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr @@ -29,41 +30,62 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie private var recyclerViewAttr: RecyclerViewAttr? = null - companion object{ + companion object { private const val MODE_VERTICAL = 0x00 private const val MODE_HORIZONTAL = 0x01 } init { attrs?.let { - val a = context?.theme?.obtainStyledAttributes( - attrs, - R.styleable.TimeLineRecyclerView, - 0, 0) + val a = context.theme?.obtainStyledAttributes( + attrs, + R.styleable.TimeLineRecyclerView, + 0, 0 + ) a?.let { recyclerViewAttr = - RecyclerViewAttr(it.getColor(R.styleable.TimeLineRecyclerView_sectionBackgroundColor, - ContextCompat.getColor(context, R.color.colorDefaultBackground)), - it.getColor(R.styleable.TimeLineRecyclerView_sectionTitleTextColor, - ContextCompat.getColor(context, R.color.colorDefaultTitle)), - it.getColor(R.styleable.TimeLineRecyclerView_sectionSubTitleTextColor, - ContextCompat.getColor(context, R.color.colorDefaultSubTitle)), - it.getColor(R.styleable.TimeLineRecyclerView_timeLineColor, - ContextCompat.getColor(context, R.color.colorDefaultTitle)), - it.getColor(R.styleable.TimeLineRecyclerView_timeLineCircleColor, - ContextCompat.getColor(context, R.color.colorDefaultTitle)), - it.getColor(R.styleable.TimeLineRecyclerView_timeLineCircleStrokeColor, - ContextCompat.getColor(context, R.color.colorDefaultStroke)), - it.getDimension(R.styleable.TimeLineRecyclerView_sectionTitleTextSize, - context.resources.getDimension(R.dimen.title_text_size)), - it.getDimension(R.styleable.TimeLineRecyclerView_sectionSubTitleTextSize, - context.resources.getDimension(R.dimen.sub_title_text_size)), - it.getDimension(R.styleable.TimeLineRecyclerView_timeLineWidth, - context.resources.getDimension(R.dimen.line_width)), - it.getBoolean(R.styleable.TimeLineRecyclerView_isSticky, true), - it.getDrawable(R.styleable.TimeLineRecyclerView_customDotDrawable), - it.getInt(R.styleable.TimeLineRecyclerView_mode, 0)) + RecyclerViewAttr( + it.getColor( + R.styleable.TimeLineRecyclerView_sectionBackgroundColor, + ContextCompat.getColor(context, R.color.colorDefaultBackground) + ), + it.getColor( + R.styleable.TimeLineRecyclerView_sectionTitleTextColor, + ContextCompat.getColor(context, R.color.colorDefaultTitle) + ), + it.getColor( + R.styleable.TimeLineRecyclerView_sectionSubTitleTextColor, + ContextCompat.getColor(context, R.color.colorDefaultSubTitle) + ), + it.getColor( + R.styleable.TimeLineRecyclerView_timeLineColor, + ContextCompat.getColor(context, R.color.colorDefaultTitle) + ), + it.getColor( + R.styleable.TimeLineRecyclerView_timeLineCircleColor, + ContextCompat.getColor(context, R.color.colorDefaultTitle) + ), + it.getColor( + R.styleable.TimeLineRecyclerView_timeLineCircleStrokeColor, + ContextCompat.getColor(context, R.color.colorDefaultStroke) + ), + it.getDimension( + R.styleable.TimeLineRecyclerView_sectionTitleTextSize, + context.resources.getDimension(R.dimen.title_text_size) + ), + it.getDimension( + R.styleable.TimeLineRecyclerView_sectionSubTitleTextSize, + context.resources.getDimension(R.dimen.sub_title_text_size) + ), + it.getDimension( + R.styleable.TimeLineRecyclerView_timeLineWidth, + context.resources.getDimension(R.dimen.line_width) + ), + it.getBoolean(R.styleable.TimeLineRecyclerView_isSticky, true), + it.getDrawable(R.styleable.TimeLineRecyclerView_customDotDrawable), + it.getInt(R.styleable.TimeLineRecyclerView_timeLineMode, MODE_VERTICAL) + ) } @@ -76,26 +98,33 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie * @param callback SectionCallback * if you'd like to know more mode , look at res/values/attrs.xml */ - fun addItemDecoration(callback: VerticalSectionItemDecoration.SectionCallback) { + fun addItemDecoration(callback: SectionCallback) { recyclerViewAttr?.let { val decoration: ItemDecoration = - when (it.mode) { - MODE_VERTICAL -> { - VerticalSectionItemDecoration(context, - callback, - it) - } - MODE_HORIZONTAL -> { - HorizontalSectionItemDecoration(context, - callback, - it) - } - else -> { - VerticalSectionItemDecoration(context, - callback, - it) - } + when (it.mode) { + MODE_VERTICAL -> { + VerticalSectionItemDecoration( + context, + callback, + it + ) } + MODE_HORIZONTAL -> { + HorizontalSectionItemDecoration( + context, + callback, + it + ) + } + else -> { + VerticalSectionItemDecoration( + context, + callback, + it + ) + } + } + this.addItemDecoration(decoration) } } diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/callback/SectionCallback.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/callback/SectionCallback.kt new file mode 100644 index 0000000..a170ebf --- /dev/null +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/callback/SectionCallback.kt @@ -0,0 +1,15 @@ +package xyz.sangcomz.stickytimelineview.callback + +import xyz.sangcomz.stickytimelineview.model.SectionInfo + +interface SectionCallback { + /** + * To check if section is + */ + fun isSection(position: Int): Boolean + + /** + * Functions that return a section header in a section + */ + fun getSectionHeader(position: Int): SectionInfo? +} \ No newline at end of file diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt new file mode 100644 index 0000000..0d32ed0 --- /dev/null +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt @@ -0,0 +1,238 @@ +package xyz.sangcomz.stickytimelineview.decoration + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.graphics.Rect +import android.graphics.Typeface +import android.graphics.drawable.Drawable +import android.graphics.drawable.GradientDrawable +import android.view.View +import androidx.recyclerview.widget.RecyclerView +import xyz.sangcomz.stickytimelineview.callback.SectionCallback +import xyz.sangcomz.stickytimelineview.ext.DP +import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr +import xyz.sangcomz.stickytimelineview.model.SectionInfo + +class HorizontalSectionItemDecoration( + context: Context, + private val sectionCallback: SectionCallback, + private val recyclerViewAttr: RecyclerViewAttr +) : RecyclerView.ItemDecoration() { + + private var defaultOffset: Int = 8.DP(context).toInt() + + private val headerTitlePaint = Paint().apply { + isAntiAlias = true + textSize = recyclerViewAttr.sectionTitleTextSize + color = recyclerViewAttr.sectionTitleTextColor + typeface = Typeface.create(FONT_FAMILY, Typeface.BOLD) + } + + private val headerSubTitlePaint = Paint().apply { + isAntiAlias = true + textSize = recyclerViewAttr.sectionSubTitleTextSize + color = recyclerViewAttr.sectionSubTitleTextColor + typeface = Typeface.create(FONT_FAMILY, Typeface.NORMAL) + } + + override fun getItemOffsets( + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State + ) { + super.getItemOffsets( + outRect, + view, + parent, + state + ) + outRect.top = getTopSpace().toInt() + + val leftMargin = defaultOffset + val rightMargin = defaultOffset + + outRect.bottom = defaultOffset / 2 + outRect.left = leftMargin + outRect.right = rightMargin + } + + + override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { + super.onDrawOver(c, parent, state) + + drawLine(c, parent) + var previousHeader: SectionInfo? = null + + if (recyclerViewAttr.isSticky) { + val topChild = parent.getChildAt(0) + val topHeaderSectionInfo = getCurrentTopSectionInfo(parent) ?: return + + val currentHeaderWidth = getCurrentHeaderViewWidth(parent) + val nextHeaderView = getNextHeaderView(parent) + + val isContact = + nextHeaderView?.left in 0..currentHeaderWidth.toInt() + defaultOffset * 2 + val defaultLeftOffset = -(topChild.left).toFloat() + defaultOffset + + previousHeader = topHeaderSectionInfo + + if (isContact) { + val offset = currentHeaderWidth - ((nextHeaderView?.left ?: 0) - defaultOffset * 2) + + drawHeader( + c, + topChild, + topHeaderSectionInfo, + defaultLeftOffset - offset + ) + } else { + drawHeader( + c, + topChild, + topHeaderSectionInfo, + defaultLeftOffset + ) + } + } + + for (i in 0 until parent.childCount) { + val child = parent.getChildAt(i) + val position = parent.getChildAdapterPosition(child) + + sectionCallback.getSectionHeader(position)?.let { sectionInfo -> + if (previousHeader?.title != sectionInfo.title) { + if (getIsSection(position)) { + drawHeader(c, child, sectionInfo) + } + previousHeader = sectionInfo + } + } + } + } + + /** + * Draw a line in the timeline. + */ + private fun drawLine(c: Canvas, parent: RecyclerView) { + val paint = Paint().apply { + isAntiAlias = true + color = recyclerViewAttr.sectionLineColor + strokeWidth = recyclerViewAttr.sectionLineWidth + } + + val yValue = getTopSpace() - (defaultOffset * 2) - (defaultOffset / 4) + + c.drawLines(floatArrayOf(0f, yValue, parent.width.toFloat(), yValue), paint) + } + + /** + * Returns the oval dotDrawable of the timeline. + */ + private fun getOvalDrawable(): Drawable { + val strokeWidth = defaultOffset / 2 + val roundRadius = defaultOffset * 2 + val strokeColor = recyclerViewAttr.sectionStrokeColor + val fillColor = recyclerViewAttr.sectionCircleColor + + val gd = GradientDrawable() + gd.setColor(fillColor) + gd.cornerRadius = roundRadius.toFloat() + gd.setStroke(strokeWidth, strokeColor) + + return gd + } + + /** + * Draw a header + */ + private fun drawHeader(c: Canvas, child: View, sectionInfo: SectionInfo, offset: Float = 0f) { + c.save() + c.translate((child.left).toFloat() + offset, 0f) + drawDotDrawable(c, sectionInfo) + drawHeaderTitle(c, sectionInfo) + drawHeaderSubTitle(c, sectionInfo) + c.restore() + } + + private fun drawDotDrawable(canvas: Canvas, sectionInfo: SectionInfo) { + val dotDrawable = + sectionInfo.dotDrawable ?: recyclerViewAttr.customDotDrawable ?: getOvalDrawable() + canvas.save() + canvas.translate( + 0f, + recyclerViewAttr.sectionTitleTextSize + recyclerViewAttr.sectionSubTitleTextSize + defaultOffset + ) + dotDrawable.draw(canvas) + canvas.restore() + } + + private fun drawHeaderTitle(canvas: Canvas, sectionInfo: SectionInfo) { + val subTitleHeight = + if (sectionInfo.subTitle.isNullOrEmpty()) recyclerViewAttr.sectionSubTitleTextSize else 0f + canvas.drawText( + sectionInfo.title, + 0f, + recyclerViewAttr.sectionTitleTextSize - subTitleHeight, headerTitlePaint + ) + } + + private fun drawHeaderSubTitle(canvas: Canvas, sectionInfo: SectionInfo) { + val subTitle = sectionInfo.subTitle ?: return + canvas.drawText( + subTitle, + 0f, + recyclerViewAttr.sectionTitleTextSize + recyclerViewAttr.sectionSubTitleTextSize, + headerSubTitlePaint + ) + } + + private fun getCurrentHeaderViewWidth(parent: RecyclerView): Float { + val prevHeaderSectionInfo = getCurrentTopSectionInfo(parent) ?: return 0f + + val titleWidth = headerTitlePaint.measureText(prevHeaderSectionInfo.title) + val subTitleWidth = headerSubTitlePaint.measureText(prevHeaderSectionInfo.subTitle ?: "") + return titleWidth.coerceAtLeast(subTitleWidth) + } + + private fun getIsSection(position: Int): Boolean = when (position) { + 0 -> { + true + } + -1 -> { + false + } + else -> { + sectionCallback.isSection(position) + } + } + + private fun getTopSpace(): Float { + return recyclerViewAttr.sectionTitleTextSize + + recyclerViewAttr.sectionSubTitleTextSize + + (defaultOffset * 4) + + (defaultOffset / 2) + } + + private fun getCurrentTopSectionInfo(parent: RecyclerView): SectionInfo? { + return parent.getChildAt(0) + ?.let { sectionCallback.getSectionHeader(parent.getChildAdapterPosition(it)) } + } + + private fun getNextHeaderView(parent: RecyclerView): View? { + val currentTopSectionInfo = getCurrentTopSectionInfo(parent) + + return (0 until parent.childCount) + .map { + parent.getChildAt(it) + } + .firstOrNull { + sectionCallback.getSectionHeader(parent.getChildAdapterPosition(it)) != currentTopSectionInfo + } + } + + companion object { + private const val FONT_FAMILY = "sans-serif-light" + } +} \ No newline at end of file diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/VerticalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt similarity index 76% rename from stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/VerticalSectionItemDecoration.kt rename to stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt index 85fcb0b..9efbd93 100755 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/ItemDecoration/VerticalSectionItemDecoration.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt @@ -1,4 +1,4 @@ -package xyz.sangcomz.stickytimelineview.ItemDecoration +package xyz.sangcomz.stickytimelineview.decoration import android.content.Context import android.graphics.Canvas @@ -14,6 +14,7 @@ import android.widget.TextView import androidx.appcompat.widget.AppCompatImageView import androidx.recyclerview.widget.RecyclerView import xyz.sangcomz.stickytimelineview.R +import xyz.sangcomz.stickytimelineview.callback.SectionCallback import xyz.sangcomz.stickytimelineview.ext.DP import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr import xyz.sangcomz.stickytimelineview.model.SectionInfo @@ -29,9 +30,9 @@ import xyz.sangcomz.stickytimelineview.model.SectionInfo * https://github.com/paetztm/recycler_view_headers */ class VerticalSectionItemDecoration( - context: Context, - private val sectionCallback: SectionCallback, - private val recyclerViewAttr: RecyclerViewAttr + context: Context, + private val sectionCallback: SectionCallback, + private val recyclerViewAttr: RecyclerViewAttr ) : RecyclerView.ItemDecoration() { private var headerView: View? = null @@ -48,16 +49,16 @@ class VerticalSectionItemDecoration( * There is a difference in top offset between sections and not sections. */ override fun getItemOffsets( - outRect: Rect, - view: View, - parent: RecyclerView, - state: RecyclerView.State + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State ) { super.getItemOffsets( - outRect, - view, - parent, - state + outRect, + view, + parent, + state ) val pos = parent.getChildAdapterPosition(view) @@ -88,9 +89,9 @@ class VerticalSectionItemDecoration( */ override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { super.onDrawOver( - c, - parent, - state + c, + parent, + state ) var previousHeader = SectionInfo("") if (headerView == null) getHeaderView(parent) @@ -108,11 +109,11 @@ class VerticalSectionItemDecoration( previousHeader = sectionInfo setHeaderView(sectionInfo) val offset = - if (topChildPosition == 0 - && childInContact.top - (headerOffset * 2) == (-1 * headerOffset) - ) 0f - else - (childInContact.top - (headerOffset * 2)).toFloat() + if (topChildPosition == 0 + && childInContact.top - (headerOffset * 2) == (-1 * headerOffset) + ) 0f + else + (childInContact.top - (headerOffset * 2)).toFloat() moveHeader(c, it, offset) } @@ -199,26 +200,23 @@ class VerticalSectionItemDecoration( paint.color = recyclerViewAttr.sectionLineColor paint.strokeWidth = recyclerViewAttr.sectionLineWidth c.drawLines( - floatArrayOf( - defaultOffset * 3f, - 0f, - defaultOffset * 3f, - parent.height.toFloat() - ), paint + floatArrayOf( + defaultOffset * 3f, + 0f, + defaultOffset * 3f, + parent.height.toFloat() + ), paint ) } - /** - * - */ private fun getChildInContact(parent: RecyclerView, contactPoint: Int): View? = - (0 until parent.childCount) - .map { - parent.getChildAt(it) - } - .firstOrNull { - it.top in contactPoint / 2..contactPoint - } + (0 until parent.childCount) + .map { + parent.getChildAt(it) + } + .firstOrNull { + it.top in contactPoint / 2..contactPoint + } /** * Returns the oval dotDrawable of the timeline. @@ -254,18 +252,9 @@ class VerticalSectionItemDecoration( private fun drawHeader(c: Canvas, child: View, headerView: View) { c.save() if (recyclerViewAttr.isSticky) { - c.translate( - 0f, - Math.max( - 0, - child.top - headerView.height - ).toFloat() - ) + c.translate(0f, 0.coerceAtLeast(child.top - headerView.height).toFloat()) } else { - c.translate( - 0f, - (child.top - headerView.height).toFloat() - ) + c.translate(0f, (child.top - headerView.height).toFloat()) } headerView.draw(c) c.restore() @@ -273,11 +262,11 @@ class VerticalSectionItemDecoration( private fun inflateHeaderView(parent: RecyclerView): View { return LayoutInflater.from(parent.context) - .inflate( - R.layout.recycler_section_header, - parent, - false - ) + .inflate( + R.layout.recycler_section_header, + parent, + false + ) } /** @@ -286,35 +275,35 @@ class VerticalSectionItemDecoration( */ private fun fixLayoutSize(view: View, parent: ViewGroup) { val widthSpec = View.MeasureSpec.makeMeasureSpec( - parent.width, - View.MeasureSpec.EXACTLY + parent.width, + View.MeasureSpec.EXACTLY ) val heightSpec = View.MeasureSpec.makeMeasureSpec( - parent.height, - View.MeasureSpec.UNSPECIFIED + parent.height, + View.MeasureSpec.UNSPECIFIED ) val childWidth = ViewGroup.getChildMeasureSpec( - widthSpec, - parent.paddingLeft + parent.paddingRight, - view.layoutParams.width + widthSpec, + parent.paddingLeft + parent.paddingRight, + view.layoutParams.width ) val childHeight = ViewGroup.getChildMeasureSpec( - heightSpec, - parent.paddingTop + parent.paddingBottom, - view.layoutParams.height + heightSpec, + parent.paddingTop + parent.paddingBottom, + view.layoutParams.height ) view.measure( - childWidth, - childHeight + childWidth, + childHeight ) view.layout( - 0, - 0, - view.measuredWidth, - view.measuredHeight + 0, + 0, + view.measuredWidth, + view.measuredHeight ) } @@ -333,21 +322,6 @@ class VerticalSectionItemDecoration( } } - - /** - * Section-specific callback interface - */ - interface SectionCallback { - /** - * To check if section is - */ - fun isSection(position: Int): Boolean - - /** - * Functions that return a section header in a section - */ - fun getSectionHeader(position: Int): SectionInfo? - } } diff --git a/stickytimelineview/src/main/res/layout/recycler_section_header.xml b/stickytimelineview/src/main/res/layout/recycler_section_header.xml index 94ff0a3..5f674b6 100755 --- a/stickytimelineview/src/main/res/layout/recycler_section_header.xml +++ b/stickytimelineview/src/main/res/layout/recycler_section_header.xml @@ -1,18 +1,16 @@ + android:paddingLeft="@dimen/header_padding_left"> + app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="@+id/dot" /> + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.505" + app:layout_constraintStart_toStartOf="@+id/list_item_section_title" + app:layout_constraintTop_toBottomOf="@+id/list_item_section_title" /> diff --git a/stickytimelineview/src/main/res/values/attrs.xml b/stickytimelineview/src/main/res/values/attrs.xml index 0475f06..4d08723 100644 --- a/stickytimelineview/src/main/res/values/attrs.xml +++ b/stickytimelineview/src/main/res/values/attrs.xml @@ -14,9 +14,9 @@ - - - + + + \ No newline at end of file From dc4c716b8036f461a0077cc1ffec945f2bd65912 Mon Sep 17 00:00:00 2001 From: sangcomz Date: Sun, 6 Sep 2020 15:39:04 +0900 Subject: [PATCH 5/9] Add sectionBackgroundColorMode --- .../TimeLineRecyclerView.kt | 18 +++-- .../HorizontalSectionItemDecoration.kt | 67 ++++++++++++++----- .../VerticalSectionItemDecoration.kt | 4 +- .../model/RecyclerViewAttr.kt | 26 +++---- .../src/main/res/values/attrs.xml | 28 +++++--- 5 files changed, 99 insertions(+), 44 deletions(-) diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt index e5a5d1e..e3b22c5 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/TimeLineRecyclerView.kt @@ -33,6 +33,10 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie companion object { private const val MODE_VERTICAL = 0x00 private const val MODE_HORIZONTAL = 0x01 + + const val MODE_FULL = 0x00 + const val MODE_TO_TIME_LINE = 0x01 + const val MODE_TO_DOT = 0x02 } init { @@ -63,11 +67,11 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie ContextCompat.getColor(context, R.color.colorDefaultTitle) ), it.getColor( - R.styleable.TimeLineRecyclerView_timeLineCircleColor, + R.styleable.TimeLineRecyclerView_timeLineDotColor, ContextCompat.getColor(context, R.color.colorDefaultTitle) ), it.getColor( - R.styleable.TimeLineRecyclerView_timeLineCircleStrokeColor, + R.styleable.TimeLineRecyclerView_timeLineDotStrokeColor, ContextCompat.getColor(context, R.color.colorDefaultStroke) ), it.getDimension( @@ -84,11 +88,15 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie ), it.getBoolean(R.styleable.TimeLineRecyclerView_isSticky, true), it.getDrawable(R.styleable.TimeLineRecyclerView_customDotDrawable), - it.getInt(R.styleable.TimeLineRecyclerView_timeLineMode, MODE_VERTICAL) + it.getInt(R.styleable.TimeLineRecyclerView_timeLineMode, MODE_VERTICAL), + it.getInt( + R.styleable.TimeLineRecyclerView_sectionBackgroundColorMode, + MODE_FULL + ) ) - } + a?.recycle() } } @@ -101,7 +109,7 @@ class TimeLineRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerVie fun addItemDecoration(callback: SectionCallback) { recyclerViewAttr?.let { val decoration: ItemDecoration = - when (it.mode) { + when (it.timeLineMode) { MODE_VERTICAL -> { VerticalSectionItemDecoration( context, diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt index 0d32ed0..9740bcd 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/HorizontalSectionItemDecoration.kt @@ -9,6 +9,8 @@ import android.graphics.drawable.Drawable import android.graphics.drawable.GradientDrawable import android.view.View import androidx.recyclerview.widget.RecyclerView +import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView.Companion.MODE_TO_DOT +import xyz.sangcomz.stickytimelineview.TimeLineRecyclerView.Companion.MODE_TO_TIME_LINE import xyz.sangcomz.stickytimelineview.callback.SectionCallback import xyz.sangcomz.stickytimelineview.ext.DP import xyz.sangcomz.stickytimelineview.model.RecyclerViewAttr @@ -22,6 +24,17 @@ class HorizontalSectionItemDecoration( private var defaultOffset: Int = 8.DP(context).toInt() + private val headerSectionBackgroundPaint = Paint().apply { + isAntiAlias = true + color = recyclerViewAttr.sectionBackgroundColor + } + + private val linePaint = Paint().apply { + isAntiAlias = true + color = recyclerViewAttr.sectionLineColor + strokeWidth = recyclerViewAttr.sectionLineWidth + } + private val headerTitlePaint = Paint().apply { isAntiAlias = true textSize = recyclerViewAttr.sectionTitleTextSize @@ -59,10 +72,12 @@ class HorizontalSectionItemDecoration( } - override fun onDrawOver(c: Canvas, parent: RecyclerView, state: RecyclerView.State) { - super.onDrawOver(c, parent, state) + override fun onDrawOver(canvas: Canvas, parent: RecyclerView, state: RecyclerView.State) { + super.onDrawOver(canvas, parent, state) + + drawBackground(canvas, parent) + drawLine(canvas, parent) - drawLine(c, parent) var previousHeader: SectionInfo? = null if (recyclerViewAttr.isSticky) { @@ -82,14 +97,14 @@ class HorizontalSectionItemDecoration( val offset = currentHeaderWidth - ((nextHeaderView?.left ?: 0) - defaultOffset * 2) drawHeader( - c, + canvas, topChild, topHeaderSectionInfo, defaultLeftOffset - offset ) } else { drawHeader( - c, + canvas, topChild, topHeaderSectionInfo, defaultLeftOffset @@ -104,7 +119,7 @@ class HorizontalSectionItemDecoration( sectionCallback.getSectionHeader(position)?.let { sectionInfo -> if (previousHeader?.title != sectionInfo.title) { if (getIsSection(position)) { - drawHeader(c, child, sectionInfo) + drawHeader(canvas, child, sectionInfo) } previousHeader = sectionInfo } @@ -115,16 +130,31 @@ class HorizontalSectionItemDecoration( /** * Draw a line in the timeline. */ - private fun drawLine(c: Canvas, parent: RecyclerView) { - val paint = Paint().apply { - isAntiAlias = true - color = recyclerViewAttr.sectionLineColor - strokeWidth = recyclerViewAttr.sectionLineWidth + private fun drawLine(canvas: Canvas, parent: RecyclerView) { + val yValue = getTopSpace() - (defaultOffset * 2) - (defaultOffset / 4) + + canvas.drawLines(floatArrayOf(0f, yValue, parent.width.toFloat(), yValue), linePaint) + } + + private fun drawBackground(canvas: Canvas, parent: RecyclerView) { + var bottom = getTopSpace() - defaultOffset + + when (recyclerViewAttr.sectionBackgroundColorMode) { + MODE_TO_DOT -> { + bottom -= (defaultOffset * 2 + defaultOffset / 2) + } + MODE_TO_TIME_LINE -> { + bottom -= if (recyclerViewAttr.sectionLineWidth > defaultOffset * 2 + defaultOffset / 2) { + recyclerViewAttr.sectionLineWidth / 2 + } else { + (defaultOffset + defaultOffset / 4) - (recyclerViewAttr.sectionLineWidth / 2) + } + } } - val yValue = getTopSpace() - (defaultOffset * 2) - (defaultOffset / 4) + val rect = Rect(parent.left, 0, parent.width, bottom.toInt()) - c.drawLines(floatArrayOf(0f, yValue, parent.width.toFloat(), yValue), paint) + canvas.drawRect(rect, headerSectionBackgroundPaint) } /** @@ -133,8 +163,8 @@ class HorizontalSectionItemDecoration( private fun getOvalDrawable(): Drawable { val strokeWidth = defaultOffset / 2 val roundRadius = defaultOffset * 2 - val strokeColor = recyclerViewAttr.sectionStrokeColor - val fillColor = recyclerViewAttr.sectionCircleColor + val strokeColor = recyclerViewAttr.sectionDotStrokeColor + val fillColor = recyclerViewAttr.sectionDotColor val gd = GradientDrawable() gd.setColor(fillColor) @@ -232,6 +262,13 @@ class HorizontalSectionItemDecoration( } } + private fun getDotRadius() = defaultOffset + defaultOffset / 4 + + + private fun isLineBiggerThenDot(): Boolean { + return recyclerViewAttr.sectionLineWidth > (getDotRadius() * 2) + } + companion object { private const val FONT_FAMILY = "sans-serif-light" } diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt index 9efbd93..b7354b7 100755 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/decoration/VerticalSectionItemDecoration.kt @@ -224,8 +224,8 @@ class VerticalSectionItemDecoration( private fun getOvalDrawable(): Drawable { val strokeWidth = defaultOffset / 2 val roundRadius = defaultOffset * 2 - val strokeColor = recyclerViewAttr.sectionStrokeColor - val fillColor = recyclerViewAttr.sectionCircleColor + val strokeColor = recyclerViewAttr.sectionDotStrokeColor + val fillColor = recyclerViewAttr.sectionDotStrokeColor val gd = GradientDrawable() gd.setColor(fillColor) diff --git a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt index 0aeec58..70441e2 100644 --- a/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt +++ b/stickytimelineview/src/main/java/xyz/sangcomz/stickytimelineview/model/RecyclerViewAttr.kt @@ -5,16 +5,18 @@ import android.graphics.drawable.Drawable /** * Created by seokwon.jeong on 17/11/2017. */ -data class RecyclerViewAttr(val sectionBackgroundColor: Int, - val sectionTitleTextColor: Int, - val sectionSubTitleTextColor: Int, - val sectionLineColor: Int, - val sectionCircleColor: Int, - val sectionStrokeColor: Int, - val sectionTitleTextSize: Float, - val sectionSubTitleTextSize: Float, - val sectionLineWidth: Float, - val isSticky: Boolean, - val customDotDrawable: Drawable?, - val mode : Int +data class RecyclerViewAttr( + val sectionBackgroundColor: Int, + val sectionTitleTextColor: Int, + val sectionSubTitleTextColor: Int, + val sectionLineColor: Int, + val sectionDotColor: Int, + val sectionDotStrokeColor: Int, + val sectionTitleTextSize: Float, + val sectionSubTitleTextSize: Float, + val sectionLineWidth: Float, + val isSticky: Boolean, + val customDotDrawable: Drawable?, + val timeLineMode: Int, + val sectionBackgroundColorMode: Int ) \ No newline at end of file diff --git a/stickytimelineview/src/main/res/values/attrs.xml b/stickytimelineview/src/main/res/values/attrs.xml index 4d08723..c1aaa32 100644 --- a/stickytimelineview/src/main/res/values/attrs.xml +++ b/stickytimelineview/src/main/res/values/attrs.xml @@ -1,22 +1,30 @@ + + + + + + + + + + + + + + + + - - - - - - + + - - - - \ No newline at end of file From 5c0690df266caf370f2afeacc712f44e1d740ee1 Mon Sep 17 00:00:00 2001 From: sangcomz Date: Sun, 6 Sep 2020 15:40:15 +0900 Subject: [PATCH 6/9] Fix Readme and demo app --- README.md | 57 ++++++++++--------- .../sangcomz/stickytimeline/MainActivity.kt | 14 +++++ app/src/main/res/layout/activity_main.xml | 26 ++++++++- 3 files changed, 69 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index daccc1d..82164f5 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,21 @@ StickyTimeLine is timeline view for android. -## What's New in 0.0.20? :tada: -- change DotDrawable for each row of items[(#16)](https://github.com/sangcomz/StickyTimeLine/issues/16) -- add java example[(#9)](https://github.com/sangcomz/StickyTimeLine/issues/9) -- migrate to AndroidX +## What's New in 0.1.0? :tada: +- Add Horizontal Mode +- Fix DEMO app +- change attribute name + - `timeLineCircleColor` -> `timeLineDotColor` + - `timeLineCircleStrokeColor` -> `timeLineDotStrokeColor` + + ## Result Screen + + Feel free to send me a pull request with your app and I'll link you here: + + | Project Name | Result Screen | + |:---------:|---| + | Sample

Get it on Google Play

| | + | AlleysMap

Get it on Google Play

| | ## How to Use @@ -19,7 +30,7 @@ StickyTimeLine is timeline view for android. dependencies { //StickyTimeLine v0.0.20 and above only supports projects that have been migrated to androidx. - compile 'com.github.sangcomz:StickyTimeLine:v0.0.20' + compile 'com.github.sangcomz:StickyTimeLine:v0.1.0' } ``` ### Usage @@ -189,28 +200,20 @@ public class JavaExampleActivity extends AppCompatActivity { #### attribute -| Method Name | Description | Default Value | -|:------------------------:|------------------------------------------------|:-------------:| -| sectionBackgroundColor | To change section section background color | #f9f9f9 | -| sectionTitleTextColor | To change section title color | #414fca | -| sectionSubTitleTextColor | To change section sub title color | #d16767 | -| timeLineColor | To change line color in timeline | #51ae45 | -| timeLineCircleColor | To change circle color in timeline | #51ae45 | -| timeLineCircleStrokeColor| To change circle stroke color in timeline | #f9f9f9 | -| sectionTitleTextSize | To change section title text size | 14sp | -| sectionSubTitleTextSize | To change section sub title text size | 12sp | -| timeLineWidth | To change line width in timeline | 4dp | -| isSticky | To change Sticky functionality in the Timeline | true | -| customDotDrawable | To change the circle to custom drawable | null | - -## Result Screen - -Feel free to send me a pull request with your app and I'll link you here: - -| Project Name | Result Screen | -|:---------:|---| -| Sample

Get it on Google Play

| | -| AlleysMap

Get it on Google Play

| | +| Method Name | Description | Default Value | +|:------------------------:|-------------------------------------------------------|:-------------:| +| sectionBackgroundColor | To change section section background color | #f9f9f9 | +| sectionTitleTextColor | To change section title color | #414fca | +| sectionSubTitleTextColor | To change section sub title color | #d16767 | +| timeLineColor | To change line color in timeline | #51ae45 | +| timeLineDotColor | To change dot color in timeline | #51ae45 | +| timeLineCircleStrokeColor| To change dot stroke color in timeline | #f9f9f9 | +| sectionTitleTextSize | To change section title text size | 14sp | +| sectionSubTitleTextSize | To change section sub title text size | 12sp | +| timeLineWidth | To change line width in timeline | 4dp | +| isSticky | To change Sticky functionality in the Timeline | true | +| customDotDrawable | To change the circle to custom drawable | null | +|sectionBackgroundColorMode| To change section background area(for horizontal mode)| MODE_FULL | # Contribute We welcome any contributions. diff --git a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt index 3d6ac25..7eb36e6 100644 --- a/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt +++ b/app/src/main/java/xyz/sangcomz/stickytimeline/MainActivity.kt @@ -63,6 +63,13 @@ class MainActivity : AppCompatActivity() { R.layout.recycler_horizontal_row ) + horizontal_recycler_view2.adapter = SingerAdapter( + layoutInflater, + singerList, + R.layout.recycler_horizontal_row + ) + + //Currently only LinearLayoutManager is supported. horizontal_recycler_view.layoutManager = LinearLayoutManager( this, @@ -70,7 +77,14 @@ class MainActivity : AppCompatActivity() { false ) + horizontal_recycler_view2.layoutManager = LinearLayoutManager( + this, + RecyclerView.HORIZONTAL, + false + ) + horizontal_recycler_view.addItemDecoration(getSectionCallback(singerList)) + horizontal_recycler_view2.addItemDecoration(getSectionCallback(singerList)) } //Get data method diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 1860c89..7c7dd4f 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -32,7 +32,9 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/vertical_text_view" - app:timeLineMode="vertical" /> + app:timeLineColor="#2196F3" + app:timeLineMode="vertical" + app:timeLineWidth="2dp" /> + + + From aab1ae46a1636c5898ebb9d852ccdf7b4f7c1e7d Mon Sep 17 00:00:00 2001 From: sangcomz Date: Sun, 6 Sep 2020 15:46:24 +0900 Subject: [PATCH 7/9] Fix readme --- README.md | 4 ++-- pic/sample_result.gif | Bin 1515606 -> 1238256 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 82164f5..203f343 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,8 @@ StickyTimeLine is timeline view for android. - Add Horizontal Mode - Fix DEMO app - change attribute name - - `timeLineCircleColor` -> `timeLineDotColor` - - `timeLineCircleStrokeColor` -> `timeLineDotStrokeColor` + - `timeLineCircleColor` -> `timeLineDotColor` + - `timeLineCircleStrokeColor` -> `timeLineDotStrokeColor` ## Result Screen diff --git a/pic/sample_result.gif b/pic/sample_result.gif index 53829f17970994a6a06efe72a19b6efd6566837a..6c51106c4a60dc209fce59050e7a3a806f078d9d 100644 GIT binary patch literal 1238256 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≪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