lihangleo2 / ShadowLayout

可定制化阴影的万能阴影布局ShadowLayout 3.0 震撼上线。效果赶超CardView。阴影支持x,y轴偏移,支持阴影扩散程度,支持阴影圆角,支持单边或多边不显示阴影;控件支持动态设置shape和selector(项目里再也不用画shape了);支持随意更改颜色值,支持随意更改颜色值,支持随意更改颜色值。重要的事情说三遍
MIT License
3.46k stars 401 forks source link

Glide 问题 #68

Closed liujingxing closed 3 years ago

liujingxing commented 3 years ago

初步看,很不错。但有一点不明白,为啥要依赖Glide? 即使要依赖,建议用compileOnly替代implementation

lihangleo2 commented 3 years ago

使用implementation不是只在本moudle下使用吗。即使主项目依赖module也拿不到Glide的。目前来看并不会引起版本冲突的。我在自己项目里,没有遇到过至少。 有什么的建议,望大神提点

lihangleo2 commented 3 years ago

依赖glide的目的是,因为背景不单可以设置颜色也能使用图片,因为ShadLayout提供不规则圆角,意思是每个角的圆角都可以不一样。所以这里我就使用了glide的去处理,且包括缓存。

liujingxing commented 3 years ago

使用implementation不是只在本moudle下使用吗。即使主项目依赖module也拿不到Glide的。目前来看并不会引起版本冲突的。我在自己项目里,没有遇到过至少。 有什么的建议,望大神提点

compileOnlyimplementation的区别在于,前者只会在编译时依赖,并不会打包进apk,而后者虽然只是在本module依赖,但也还是会打包进apk里;这样就会导致一个问题,如果我本地依赖的glide版本低于ShadowLayout内部的glide版本,并且使用了低版本的api,而这些api在新版本中被删除,就会编译报错,相反,如果我本地依赖的glide版本大于ShadowLayout内部的glide版本,而ShadowLayout内部用到了低版本的api,这些api在新版本中被删除,那运行到相关代码就会直接崩溃。

liujingxing commented 3 years ago

依赖glide的目的是,因为背景不单可以设置颜色也能使用图片,因为ShadLayout提供不规则圆角,意思是每个角的圆角都可以不一样。所以这里我就使用了glide的去处理,且包括缓存。

你说的这些功能,可以自己去实现,没必要通过glide;而缓存,个人觉得没有必要。

lihangleo2 commented 3 years ago

嗯,多谢你的建议。找个时间我好好修改一下。

JasonBtc commented 3 years ago

在项目app的gradle文件下 添加 .shadowlayout,{ exclude group: 'com.github.bumptech.glide', module: 'glide' } 就可以解决冲突了