view draw 流程分析
之前的relayout 说道返回了mSurface ,
int relayoutResult = mWindowSession.relayout(//调用session 中的 relayout,又binder 调用wms relayoutWindow
mWindow, mSeq, params,
(int) (mView.getMeasuredWidth() * appScale + 0.5f),
(int) (mView.getMeasuredHeight() * appScale + 0.5f),
viewVisibility, insetsPending ? WindowManagerGlobal.RELAYOUT_INSETS_PENDING : 0,
mWinFrame, mPendingOverscanInsets, mPendingContentInsets, mPendingVisibleInsets,
mPendingStableInsets, mPendingOutsets, mPendingBackDropFrame, mPendingConfiguration,
mSurface
AP侧Surface 负责UI绘制,WMS侧也有Surface,负责窗口的属性控制,要全局考虑 统筹安排。
private void performDraw() {
try {
draw(fullRedrawNeeded);
} finally {
mIsDrawing = false;
Trace.traceEnd(Trace.TRACE_TAG_VIEW);
}
。。。
本文地址:https://blog.csdn.net/qq_42894864/article/details/107992022
上一篇: 菌类有哪些品种