Browse Source

Pass header height as style param from Js

consider changing this later on
Guy Carmeli 8 years ago
parent
commit
758c7414ff

+ 1
- 0
android/app/src/main/java/com/reactnativenavigation/params/CollapsingTopBarParams.java View File

@@ -7,6 +7,7 @@ import com.reactnativenavigation.views.collapsingToolbar.behaviours.CollapseBeha
7 7
 public class CollapsingTopBarParams {
8 8
     public @Nullable String imageUri;
9 9
     public @Nullable String reactViewId;
10
+    public int reactViewHeight;
10 11
     public StyleParams.Color scrimColor;
11 12
     public CollapseBehaviour collapseBehaviour;
12 13
 

+ 1
- 0
android/app/src/main/java/com/reactnativenavigation/params/parsers/CollapsingTopBarParamsParser.java View File

@@ -28,6 +28,7 @@ class CollapsingTopBarParamsParser extends Parser {
28 28
         CollapsingTopBarParams result = new CollapsingTopBarParams();
29 29
         result.imageUri = params.getString("collapsingToolBarImage", null);
30 30
         result.reactViewId = params.getString("collapsingToolBarComponent", null);
31
+        result.reactViewHeight = params.getInt("collapsingToolBarComponentHeight");
31 32
         result.scrimColor = getColor(params, "collapsingToolBarCollapsedColor", new StyleParams.Color(Color.WHITE));
32 33
         result.collapseBehaviour = getCollapseBehaviour();
33 34
         return result;

+ 14
- 4
android/app/src/main/java/com/reactnativenavigation/views/collapsingToolbar/CollapsingTopBar.java View File

@@ -14,12 +14,13 @@ import com.reactnativenavigation.views.TopBar;
14 14
 
15 15
 public class CollapsingTopBar extends TopBar implements CollapsingView {
16 16
     private CollapsingTopBarBackground collapsingTopBarBackground;
17
-    private CollapsingTopBarReactView headerView;
17
+    private CollapsingTopBarReactView header;
18 18
     private ScrollListener scrollListener;
19 19
     private float finalCollapsedTranslation;
20 20
     private CollapsingTopBarParams params;
21 21
     private final ViewCollapser viewCollapser;
22 22
     private final int topBarHeight;
23
+    private String title;
23 24
 
24 25
     public CollapsingTopBar(Context context, final CollapsingTopBarParams params) {
25 26
         super(context);
@@ -48,6 +49,15 @@ public class CollapsingTopBar extends TopBar implements CollapsingView {
48 49
         this.scrollListener = scrollListener;
49 50
     }
50 51
 
52
+    @Override
53
+    public void setTitle(String title) {
54
+        if (params.hasReactView()) {
55
+            this.title = title;
56
+        } else {
57
+            super.setTitle(title);
58
+        }
59
+    }
60
+
51 61
     private void createBackgroundImage(CollapsingTopBarParams params) {
52 62
         if (params.hasBackgroundImage()) {
53 63
             collapsingTopBarBackground = new CollapsingTopBarBackground(getContext(), params);
@@ -58,11 +68,11 @@ public class CollapsingTopBar extends TopBar implements CollapsingView {
58 68
 
59 69
     private void createReactView(CollapsingTopBarParams params) {
60 70
         if (params.hasReactView()) {
61
-            headerView = new CollapsingTopBarReactView(getContext(),
71
+            header = new CollapsingTopBarReactView(getContext(),
62 72
                     params.reactViewId,
63 73
                     new NavigationParams(Bundle.EMPTY));
64
-            LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT, (int) ViewUtils.convertDpToPixel(400));
65
-            titleBarAndContextualMenuContainer.addView(headerView, lp);
74
+            LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT, (int) ViewUtils.convertDpToPixel(params.reactViewHeight));
75
+            titleBarAndContextualMenuContainer.addView(header, lp);
66 76
         }
67 77
     }
68 78
 

+ 1
- 0
src/deprecated/platformSpecificDeprecated.android.js View File

@@ -127,6 +127,7 @@ function convertStyleParams(originalStyleObject) {
127 127
     topBarElevationShadowEnabled: originalStyleObject.topBarElevationShadowEnabled,
128 128
     collapsingToolBarImage: originalStyleObject.collapsingToolBarImage,
129 129
     collapsingToolBarComponent: originalStyleObject.collapsingToolBarComponent,
130
+    collapsingToolBarComponentHeight: originalStyleObject.collapsingToolBarComponentHeight,
130 131
     collapsingToolBarCollapsedColor: processColor(originalStyleObject.collapsingToolBarCollapsedColor),
131 132
     titleBarHidden: originalStyleObject.navBarHidden,
132 133
     titleBarHideOnScroll: originalStyleObject.navBarHideOnScroll,