- 相反,我们只想在ViewRootImpl中用适当的dirty rect安排一次遍历。
- 此方法调用ViewGroup中的快速失效方法,这些方法在层次结构中遍历,并根据需要转换dirty rect。
- 如果此视图中未使用显示列表属性,则该方法还处理正常的无效逻辑。
- 该备份方法使用invalidateParent和forceRedraw标志来处理各种属性设置方法中使用的这些情
- @param invalidateParent 如果此视图中未使用显示列表属性,
- 则强制调用invalidateParentCaches()
- @param forceRedraw 如果此视图中未使用显示列表属性,请将视图标记为“已绘制”以强制传播无效
*/
@UnsupportedAppUsage
void invalidateViewProperty(boolean invalidateParent, boolean forceRedraw) {
if (!isHardwareAccelerated()//是否支持硬件加速
|| !mRenderNode.hasDisplayList()//是否有需要绘制的缓冲数据
|| (mPrivateFlags & PFLAG_DRAW_ANIMATION) != 0) {//view是否正在绘制
if (invalidateParent) {//是否刷新父控件
invalidateParentCaches();清楚parent view的缓存,不调用父控件的invalidate方法
}
if (forceRedraw) {
mPrivateFlags |= PFLAG_DRAWN; // force another invalidation with the new orienta
【BYM】Android 仿百度搜索列表滑动效果,flutter环境搭建
本文详细介绍了如何在Flutter环境中模仿Android中的百度搜索列表滑动效果,包括关键思路和源码分析,涉及视图刷新、触摸点坐标获取以及自定义RecyclerView的滑动手势操作。
摘要由CSDN通过智能技术生成