1.如下,用的Glide4.0
RequestOptions options = new RequestOptions()
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true).transform(new BlurTransformation(Main2Activity.this, 20));
原因:设置了过大以上的高斯模糊,亲测20可以正常进入回调函数,30就不行了,迟迟不走回调……
看了下代码如下
ScriptIntrinsicBlur script = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs)); script.setInput(input); // Set the blur radius //设置模糊半径 script.setRadius(radius);
再看看setRadius函数如下:
/**
* Set the radius of the Blur.
*
* Supported range 0 < radius <= 25
*
* @param radius The radius of the blur
*/
public void setRadius(float radius) {
if (radius <= 0 || radius > 25) {
throw new RSIllegalArgumentException("Radius out of range (0 < r <= 25).");
}
setVar(0, radius);
}
可知设置超过25的就会报异常 "Radius out of range (0 < r <= 25)." ,但是gilde没有报错,只是迟迟加载不出来不进回调,这个函数还是在android.jar的源码,就先告一段落了,记录一下。
1万+

被折叠的 条评论
为什么被折叠?



