我有一个自定义视图组,基于触摸事件(拖放等)在屏幕上进行动画处理。我希望它能够略微超出其边界绘制,并且仍然可以平滑地进行动画处理。
我尝试在拖动视图上设置setLayerType(LAYER_TYPE_HARDWARE,null),性能非常好,但是超出边界的任何内容都被裁剪了。
我尝试设置LAYER_TYPE_NONE,性能仍然不错,但是视图拖动后存在动画残影/模糊效果(就像在屏幕上涂抹一样)。
我在Moto X和Nexus 4上尝试了这个方法,结果相同。
最好的方法是什么? setClipChildren(false)是否应该与LAYER_TYPE_HARDWARE一起使用?有趣的是,LAYER_TYPE_SOFTWARE和LAYER_TYPE_HARDWARE都显示出与预期不同的剪切效果。
我尝试在拖动视图上设置setLayerType(LAYER_TYPE_HARDWARE,null),性能非常好,但是超出边界的任何内容都被裁剪了。
我尝试设置LAYER_TYPE_NONE,性能仍然不错,但是视图拖动后存在动画残影/模糊效果(就像在屏幕上涂抹一样)。
我在Moto X和Nexus 4上尝试了这个方法,结果相同。
最好的方法是什么? setClipChildren(false)是否应该与LAYER_TYPE_HARDWARE一起使用?有趣的是,LAYER_TYPE_SOFTWARE和LAYER_TYPE_HARDWARE都显示出与预期不同的剪切效果。