【发布时间】:2013-09-01 10:02:12
【问题描述】:
如何正确使用 RenderScript Intrinsics。
如图http://android-developers.blogspot.com/2013/08/renderscript-intrinsics.html
//Assuming my original Bitmap is "bm"
Bitmap outputBitmap = Bitmap.createBitmap(bm.getHeight(),
bm.getWidth(), Config.ARGB_8888);
RenderScript rs = RenderScript.create(getApplicationContext());
ScriptIntrinsicBlur theIntrinsic = ScriptIntrinsicBlur
.create(rs, Element.U8_4(rs));
Allocation tmpIn = Allocation.createFromBitmap(rs, bm);
Allocation tmpOut = Allocation.createFromBitmap(rs, outputBitmap);
theIntrinsic.setRadius(25.f);
theIntrinsic.setInput(tmpIn);
theIntrinsic.forEach(tmpOut);
tmpOut.copyTo(outputBitmap);
bm.recycle();
rs.destroy
我在初始布局中得到了 outputBitmap 的一些黑色区域,但在用户滚动 HorizontalScrollView 的 Scroller 后会填充这些区域,从而使可绘制对象“刷新”本身。
我也遇到了这个错误(如果有帮助的话):
09-01 05:54:11.246: E/RenderScript(11423): rsAssert failed: !mElements.size(), in frameworks/rs/rsElement.cpp at 375
任何有关正确使用 RS 的建议都会有所帮助。
【问题讨论】:
标签: android intrinsics renderscript