all-base-adapter icon indicating copy to clipboard operation
all-base-adapter copied to clipboard

ViewGroup的多种type不同数据结构,如果采用rv的多种type不同数据结构的的方法,就不需要强转了,

Open yingshirun opened this issue 7 years ago • 3 comments

ViewGroup的多种type不同数据结构,如果采用rv的多种type不同数据结构的实体类处理的方法,接口也添加onbind方法,就不需要强转了,亲测有效没毛病, 赞一个使用itemId做itemType的方法, 有种豁然开朗的感觉. 感觉接口加泛型真是面向对象的多态的精髓体现啊

yingshirun avatar Jan 05 '17 08:01 yingshirun

是的,其实不管ViewGroup、RecyclerView 甚至ListView 理论上他们的接口都应该一样的。 这种思想,我个人认为是一种分离,各司其职。 但在数据结构(Javabean)里增加一个onBind()方法,也是我突然想到的,我还没在项目中使用,所以没敢大面积推广,你是个有心人,我在reamde里都没介绍这种方法,我也在思量之中,是否有其他弊端。例如 是否存在需要一些Activity中的变量,现在分离至数据结构中,是否获取那些变量不再方便。

mcxtzhang avatar Jan 05 '17 08:01 mcxtzhang

感觉这个在javaBean中添加onBind方法进行UI的数据填充 很nice,不同实体类对应不同的界面,各司其职, 有些databinding的数据视图绑定的意思. 如果这样感觉javaBean不够独立的话 是否可以考虑将 javaBean在单独抽离出来. 止于暂时想不到的弊端之类 ,那要等实际使用后,在慢慢完善

yingshirun avatar Jan 06 '17 07:01 yingshirun

哈哈,你真是太棒了, 是的 是有种DataBinding的味道在里面。 如你所说

有些databinding的数据视图绑定的意思

我是有些借鉴DataBinding的思想。 也是在写完DataBinding的代码后,突然想到是否也可以将其他adapter的数据绑定代码分离出去。于是就改写了RecyclerView的一个adapter进行试水。 以后使用中如果有问题,再来讨论哈。

mcxtzhang avatar Jan 06 '17 08:01 mcxtzhang