提交 2813dd1d 编写于 作者: limuyang2's avatar limuyang2

perf: 整理模块

上级 c38a9fa9
......@@ -33,38 +33,6 @@ import java.lang.reflect.ParameterizedType
import java.util.*
import kotlin.collections.ArrayList
/**
* 获取模块
*/
private interface BaseQuickAdapterModuleImp {
/**
* 重写此方法,返回自定义模块
* @param baseQuickAdapter BaseQuickAdapter<*, *>
* @return BaseLoadMoreModule
*/
fun addLoadMoreModule(baseQuickAdapter: BaseQuickAdapter<*, *>): BaseLoadMoreModule {
return BaseLoadMoreModule(baseQuickAdapter)
}
/**
* 重写此方法,返回自定义模块
* @param baseQuickAdapter BaseQuickAdapter<*, *>
* @return BaseUpFetchModule
*/
fun addUpFetchModule(baseQuickAdapter: BaseQuickAdapter<*, *>): BaseUpFetchModule {
return BaseUpFetchModule(baseQuickAdapter)
}
/**
* 重写此方法,返回自定义模块
* @param baseQuickAdapter BaseQuickAdapter<*, *>
* @return BaseExpandableModule
*/
fun addDraggableModule(baseQuickAdapter: BaseQuickAdapter<*, *>): BaseDraggableModule {
return BaseDraggableModule(baseQuickAdapter)
}
}
/**
* Base Class
* @param T : type of data, 数据类型
......@@ -74,7 +42,7 @@ private interface BaseQuickAdapterModuleImp {
abstract class BaseQuickAdapter<T, VH : BaseViewHolder>
@JvmOverloads constructor(@LayoutRes private val layoutResId: Int,
data: MutableList<T>? = null)
: RecyclerView.Adapter<VH>(), BaseQuickAdapterModuleImp {
: RecyclerView.Adapter<VH>() {
companion object {
const val HEADER_VIEW = 0x10000111
......
......@@ -25,7 +25,16 @@ import java.util.*
/**
* 需要【拖拽】功能的,[BaseQuickAdapter]继承此接口
*/
interface DraggableModule
interface DraggableModule {
/**
* 重写此方法,返回自定义模块
* @param baseQuickAdapter BaseQuickAdapter<*, *>
* @return BaseExpandableModule
*/
fun addDraggableModule(baseQuickAdapter: BaseQuickAdapter<*, *>): BaseDraggableModule {
return BaseDraggableModule(baseQuickAdapter)
}
}
open class BaseDraggableModule(private val baseQuickAdapter: BaseQuickAdapter<*, *>) : DraggableListenerImp {
......
......@@ -20,7 +20,16 @@ import com.chad.library.adapter.base.viewholder.BaseViewHolder
/**
* 需要【向下加载更多】功能的,[BaseQuickAdapter]继承此接口
*/
interface LoadMoreModule
interface LoadMoreModule {
/**
* 重写此方法,返回自定义模块
* @param baseQuickAdapter BaseQuickAdapter<*, *>
* @return BaseLoadMoreModule
*/
fun addLoadMoreModule(baseQuickAdapter: BaseQuickAdapter<*, *>): BaseLoadMoreModule {
return BaseLoadMoreModule(baseQuickAdapter)
}
}
object LoadMoreModuleConfig {
......
......@@ -13,7 +13,16 @@ import com.chad.library.adapter.base.listener.UpFetchListenerImp
/**
* 需要【向上加载更多】功能的,[BaseQuickAdapter]继承此接口
*/
interface UpFetchModule
interface UpFetchModule {
/**
* 重写此方法,返回自定义模块
* @param baseQuickAdapter BaseQuickAdapter<*, *>
* @return BaseUpFetchModule
*/
fun addUpFetchModule(baseQuickAdapter: BaseQuickAdapter<*, *>): BaseUpFetchModule {
return BaseUpFetchModule(baseQuickAdapter)
}
}
open class BaseUpFetchModule(private val baseQuickAdapter: BaseQuickAdapter<*, *>) : UpFetchListenerImp {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册