不積跬步無以至千里
一.前摘
層疊效果如上圖,其實我們前邊已經寫過優化類似的場景文章:優化鎖屏解鎖界面層疊問題 ,這裏是對這種場景的補充。這種場景是點擊自定義通知裏面的控件有會啓動一些Activity這種場景,因爲此時在鎖屏的狀態下,所以需要先去解鎖才能啓動某些界面,然後這裏會導致界面重疊的情形。
二.分析與解決
通過在Bouncer界面的show方法中打印調用棧,查到了此調用的邏輯,調用的邏輯如下:
app/src/com/android/systemui/statusbar/phone/StatusBarRemoteInputCallback.java
@Override
public void onLockedRemoteInput(ExpandableNotificationRow row, View clicked) {
mStatusBarStateController.setLeaveOpenOnKeyguardHide(true);
mShadeController.showBouncer(true /* scrimmed */);
mPending