我有一个观点,那就是RelativeLayout。在该布局中,有一个图像,默认情况下可见性设置为不变。我想要实现的是以可编程方式将可见性更改为可见,然后创建视图快照,将其绘制到画布。
View icon = v.findViewById(android.R.id.icon2);
if (icon != null) {
icon.setVisibility(View.VISIBLE);
v.invalidate();
v.forceLayout();
icon.invalidate();
icon.refreshDrawableState();
}
...
v.setDrawingCacheEnabled(true);
mFloatBitmap = Bitmap.createBitmap(v.getDrawingCache());
v.setDrawingCacheEnabled(false);
生成的位图不包含更改icon.setVisibility(View.VISIBLE);
。我应该如何立即使视图无效?我在icon.setVisibility(View.VISIBLE);
之后使用的方法都没有用。
答案 0 :(得分:0)
直到它经过onMeasure和onDraw之后才会真正显现。直到onMeasure它才知道它的高度,直到onDraw它没有缓存。在抽奖发生后你将不得不这样做。没有办法让它立即发生。