Browse Source

fix margin top topbar when statusbar drawbehind (#5209)

Igor 5 years ago
parent
commit
234c59ce7b

+ 5
- 1
lib/android/app/src/main/java/com/reactnativenavigation/views/ComponentLayout.java View File

95
     public void drawBelowTopBar(TopBar topBar) {
95
     public void drawBelowTopBar(TopBar topBar) {
96
         if (getLayoutParams() instanceof RelativeLayout.LayoutParams) {
96
         if (getLayoutParams() instanceof RelativeLayout.LayoutParams) {
97
             RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) getLayoutParams();
97
             RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) getLayoutParams();
98
-            layoutParams.topMargin = ViewUtils.getHeight(topBar);
98
+            if (topBar.getLayoutParams() instanceof MarginLayoutParams) {
99
+                layoutParams.topMargin = ViewUtils.getHeight(topBar) + ((MarginLayoutParams) topBar.getLayoutParams()).topMargin;
100
+            } else {
101
+                layoutParams.topMargin = ViewUtils.getHeight(topBar);
102
+            }
99
             try {
103
             try {
100
                 setLayoutParams(layoutParams);
104
                 setLayoutParams(layoutParams);
101
             } catch (IllegalStateException ignored) { }
105
             } catch (IllegalStateException ignored) { }