杨玉安

Results 3 comments of 杨玉安

> 其实在MultiItemAdapter添加各种addItemType会导致代码冗余的很,适当的抽离和使用反射会使代码简介很多很多,比如我在项目中的尝试: > > ```java > class DetailsAdapter : BaseMultiItemAdapter() { > init { > // 根据type添加返回type 滑动时会根据对应额Position去创建对应的Holder > onItemViewType { position, list -> > list[position].itemType > } > >...

> 看了你的代码,并没有本质变化。对于一个 三方库 来说,这种过渡的封装显得没有必要,反而会丢失更多的自由性,每个人可以安装不同的业务情况,自己去封装个 `BaseVH`。 你所说到的 冗余 问题,其实处理起来很简单,例如`OnMultiItemAdapterListener`可独立成一个class。 明白了,感谢大佬指导,那咱们的库有没有更优雅的获取Holder实例的方法呢?

> 其实在MultiItemAdapter添加各种addItemType会导致代码冗余的很,适当的抽离和使用反射会使代码简介很多很多,比如我在项目中的尝试: ```java class DetailsAdapter : BaseMultiItemAdapter() { init { // 根据type添加返回type 滑动时会根据对应额Position去创建对应的Holder onItemViewType { position, list -> list[position].itemType } addDetailsVH(T_BRAND_HEADER.hashCode(), GDBrandHeaderVH::class.java, R.layout.item_vh_details_brand_header) addDetailsVH(T_TOP_BANNER.hashCode(), GDTopBannerVH::class.java, R.layout.item_vh_details_top_banner) addDetailsVH(T_PRESALE_PRICE.hashCode(), GDPresalePricesVH::class.java,R.layout.item_vh_details_presale_prices) addDetailsVH(T_ACTIVITY_PRICE.hashCode(), GDActivityPricesVH::class.java,...