mirror of
				https://github.com/AdrianKuta/Expandable-RecyclerView.git
				synced 2025-10-31 00:43:39 +01:00 
			
		
		
		
	Updated Sample
This commit is contained in:
		
							
								
								
									
										
											BIN
										
									
								
								Demo.gif
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Demo.gif
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 191 KiB After Width: | Height: | Size: 157 KiB | 
| @@ -1,8 +1,7 @@ | |||||||
| apply plugin: 'com.android.application' | apply plugin: 'com.android.application' | ||||||
|  |  | ||||||
| apply plugin: 'kotlin-android' | apply plugin: 'kotlin-android' | ||||||
|  |  | ||||||
| apply plugin: 'kotlin-android-extensions' | apply plugin: 'kotlin-android-extensions' | ||||||
|  | apply plugin: 'kotlin-kapt' | ||||||
|  |  | ||||||
| android { | android { | ||||||
|     compileSdkVersion 29 |     compileSdkVersion 29 | ||||||
| @@ -32,7 +31,7 @@ dependencies { | |||||||
|     implementation 'androidx.appcompat:appcompat:1.1.0' |     implementation 'androidx.appcompat:appcompat:1.1.0' | ||||||
|     implementation 'androidx.core:core-ktx:1.1.0' |     implementation 'androidx.core:core-ktx:1.1.0' | ||||||
|     implementation 'androidx.constraintlayout:constraintlayout:1.1.3' |     implementation 'androidx.constraintlayout:constraintlayout:1.1.3' | ||||||
|     implementation 'com.github.adriankuta:expandable-recyclerView:0.0.1-beta02' |     implementation 'com.github.adriankuta:expandable-recyclerView:1.0.0' | ||||||
|     testImplementation 'junit:junit:4.12' |     testImplementation 'junit:junit:4.12' | ||||||
|     androidTestImplementation 'androidx.test.ext:junit:1.1.1' |     androidTestImplementation 'androidx.test.ext:junit:1.1.1' | ||||||
|     androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' |     androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' | ||||||
|   | |||||||
| @@ -7,12 +7,12 @@ import androidx.recyclerview.widget.RecyclerView | |||||||
| import com.github.adriankuta.databinding.ItemLevel1Binding | import com.github.adriankuta.databinding.ItemLevel1Binding | ||||||
| import com.github.adriankuta.databinding.ItemLevel2Binding | import com.github.adriankuta.databinding.ItemLevel2Binding | ||||||
| import com.github.adriankuta.databinding.ItemLevel3Binding | import com.github.adriankuta.databinding.ItemLevel3Binding | ||||||
|  | import com.github.adriankuta.expandable_recyclerview.ExpandableRecyclerViewAdapter | ||||||
| import com.github.adriankuta.expandable_recyclerview.ExpandableTreeNode | import com.github.adriankuta.expandable_recyclerview.ExpandableTreeNode | ||||||
| import com.github.adriankuta.expandable_recyclerview.MultilevelRecyclerViewAdapter |  | ||||||
| import com.github.adriankuta.expandable_recyclerview.expandableTree | import com.github.adriankuta.expandable_recyclerview.expandableTree | ||||||
|  |  | ||||||
| class ExpandableAdapter : | class ExpandableAdapter : | ||||||
|     MultilevelRecyclerViewAdapter<String, ExpandableAdapter.ExpandableViewHolder>() { |     ExpandableRecyclerViewAdapter<String, ExpandableAdapter.ExpandableViewHolder>() { | ||||||
|  |  | ||||||
|     private var tree: ExpandableTreeNode<String>? = null |     private var tree: ExpandableTreeNode<String>? = null | ||||||
|  |  | ||||||
| @@ -21,7 +21,7 @@ class ExpandableAdapter : | |||||||
|         notifyDataSetChanged() |         notifyDataSetChanged() | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     override fun getTreeNodes(): ExpandableTreeNode<String> = tree ?: expandableTree("") {} |     override fun getTreeNodes(): ExpandableTreeNode<String> = tree ?: expandableTree("") | ||||||
|  |  | ||||||
|     override fun onCreateViewHolder(parent: ViewGroup, nestLevel: Int): ExpandableViewHolder { |     override fun onCreateViewHolder(parent: ViewGroup, nestLevel: Int): ExpandableViewHolder { | ||||||
|         return when (nestLevel) { |         return when (nestLevel) { | ||||||
| @@ -51,6 +51,7 @@ class ExpandableAdapter : | |||||||
|             ) { |             ) { | ||||||
|                 binding.node = node |                 binding.node = node | ||||||
|                 binding.root.setOnClickListener { onClickListener?.invoke(node) } |                 binding.root.setOnClickListener { onClickListener?.invoke(node) } | ||||||
|  |                 binding.executePendingBindings() | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |  | ||||||
| @@ -61,6 +62,7 @@ class ExpandableAdapter : | |||||||
|             ) { |             ) { | ||||||
|                 binding.node = node |                 binding.node = node | ||||||
|                 binding.root.setOnClickListener { onClickListener?.invoke(node) } |                 binding.root.setOnClickListener { onClickListener?.invoke(node) } | ||||||
|  |                 binding.executePendingBindings() | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |  | ||||||
| @@ -71,6 +73,7 @@ class ExpandableAdapter : | |||||||
|             ) { |             ) { | ||||||
|                 binding.node = node |                 binding.node = node | ||||||
|                 binding.root.setOnClickListener { onClickListener?.invoke(node) } |                 binding.root.setOnClickListener { onClickListener?.invoke(node) } | ||||||
|  |                 binding.executePendingBindings() | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user