Android 在可见性更改后绘制最后可见状态

标签 android android-ui

我有一个始终不可见的自定义 ViewGroup。当 View 不可见时,我通过调用 removeAllViews() 清除所有 subview 。问题是当我更改可见性时,先绘制旧内容,然后再更新到新内容,这会导致屏幕闪烁。我尝试调用 destroyDrawingCache() 但没有帮助。我在这里遗漏了什么吗?

至于我的自定义 ViewGroup - 它唯一要做的就是覆盖 onMeasure()onLayout() 以正确布置子项。

最佳答案

找到问题了!当我添加 child 时,我有一个 ScaleAnimation,其 fillAfter 标志设置为 true。这是导致问题的原因。删除 fillAfter 标志解决了这个问题。 它只发生在 ICS+ FYI 上,所以可能是硬件加速的问题。

关于Android 在可见性更改后绘制最后可见状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13905323/

相关文章:

java - java中的静态类和final类

android - 使控件适合自定义 ActionBar View

android - XML 中的自定义按钮

android - Google Plus 应用程序(流)使用什么 View 组件?

Android TimePicker自定义分钟步长

android - 如何在 Fedora 上将 gradle 从 4.4.1 升级到最新版本?

java - 如何让应用程序等待然后开始 Activity 或返回?

android - 如何在 Eclipse 中调试时终止 Android 应用程序

android - 如何缩短 Android 开发时间

android:删除ldpi/mdpi文件夹的陷阱