From 2ec43d4ff2a00ebd44610e875790fad7d61a2c02 Mon Sep 17 00:00:00 2001 From: leafwai Date: Fri, 19 Nov 2021 14:53:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DToolbarActivity=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E7=9A=84=E5=86=85=E5=AD=98=E6=B3=84=E6=BC=8F=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/base/ToolBarActivity.java | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/com/gh/base/ToolBarActivity.java b/app/src/main/java/com/gh/base/ToolBarActivity.java index d3c8dac5f3..385d4f7ea3 100644 --- a/app/src/main/java/com/gh/base/ToolBarActivity.java +++ b/app/src/main/java/com/gh/base/ToolBarActivity.java @@ -83,8 +83,6 @@ public abstract class ToolBarActivity extends BaseActivity implements ToolbarCon @Nullable private TextView mDownloadCountHint; - private ViewTreeObserver.OnGlobalLayoutListener mOnGlobalLayoutListener; - @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -199,14 +197,17 @@ public abstract class ToolBarActivity extends BaseActivity implements ToolbarCon } else { final int[] diff = {0}; LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) layoutParams; - mOnGlobalLayoutListener = () -> { - if (diff[0] != mActionMenuView.getWidth() - mBackContainer.getWidth()) { - diff[0] = mActionMenuView.getWidth() - mBackContainer.getWidth(); - params.setMargins(diff[0], 0, 0, 0); - mTitleContainer.setLayoutParams(params); + mActionMenuView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { + @Override + public void onGlobalLayout() { + if (diff[0] != mActionMenuView.getWidth() - mBackContainer.getWidth()) { + diff[0] = mActionMenuView.getWidth() - mBackContainer.getWidth(); + params.setMargins(diff[0], 0, 0, 0); + mTitleContainer.setLayoutParams(params); + } + mActionMenuView.getViewTreeObserver().removeOnGlobalLayoutListener(this); } - }; - mActionMenuView.getViewTreeObserver().addOnGlobalLayoutListener(mOnGlobalLayoutListener); + }); } } } @@ -308,11 +309,4 @@ public abstract class ToolBarActivity extends BaseActivity implements ToolbarCon mToolbarContainer.setVisibility(isHide ? View.GONE : View.VISIBLE); } } - - @Override - protected void onDestroy() { - super.onDestroy(); - if (mActionMenuView != null && mOnGlobalLayoutListener != null && !showToolbarAtLeft()) - mActionMenuView.getViewTreeObserver().removeOnGlobalLayoutListener(mOnGlobalLayoutListener); - } }