Guy Carmeli преди 8 години
родител
ревизия
3b9338d963

+ 5
- 12
android/app/src/main/java/com/reactnativenavigation/layouts/ScreenLayout.java Целия файл

5
 import android.content.Context;
5
 import android.content.Context;
6
 import android.graphics.Color;
6
 import android.graphics.Color;
7
 import android.os.Build;
7
 import android.os.Build;
8
-import android.os.Bundle;
9
 import android.support.annotation.ColorInt;
8
 import android.support.annotation.ColorInt;
10
 import android.view.Window;
9
 import android.view.Window;
11
 import android.widget.LinearLayout;
10
 import android.widget.LinearLayout;
12
 
11
 
13
 import com.reactnativenavigation.params.ScreenParams;
12
 import com.reactnativenavigation.params.ScreenParams;
14
 import com.reactnativenavigation.params.ScreenStyleParams;
13
 import com.reactnativenavigation.params.ScreenStyleParams;
15
-import com.reactnativenavigation.params.TitleBarButtonParams;
16
 import com.reactnativenavigation.utils.SdkSupports;
14
 import com.reactnativenavigation.utils.SdkSupports;
17
 import com.reactnativenavigation.views.ContentView;
15
 import com.reactnativenavigation.views.ContentView;
18
 import com.reactnativenavigation.views.ScrollDirectionListener;
16
 import com.reactnativenavigation.views.ScrollDirectionListener;
19
 
17
 
20
-import java.util.List;
21
-
22
 import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
18
 import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
23
 import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
19
 import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
24
 
20
 
25
 public class ScreenLayout extends LinearLayout implements ScrollDirectionListener.OnScrollChanged {
21
 public class ScreenLayout extends LinearLayout implements ScrollDirectionListener.OnScrollChanged {
26
 
22
 
27
-    private final String screenId;
28
-    private final Bundle passProps;
29
-    private final List<TitleBarButtonParams> buttons;
23
+    private final ScreenParams screenParams;
30
     private ContentView contentView;
24
     private ContentView contentView;
31
     private TopBar topBar;
25
     private TopBar topBar;
32
 
26
 
33
     public ScreenLayout(Context context, ScreenParams screenParams) {
27
     public ScreenLayout(Context context, ScreenParams screenParams) {
34
         super(context);
28
         super(context);
35
-        screenId = screenParams.screenId;
36
-        passProps = screenParams.passProps;
37
-        buttons = screenParams.buttons;
29
+        this.screenParams = screenParams;
38
         setOrientation(VERTICAL);
30
         setOrientation(VERTICAL);
39
 
31
 
40
         createViews();
32
         createViews();
43
 
35
 
44
     private void createViews() {
36
     private void createViews() {
45
         addTopBar();
37
         addTopBar();
46
-        topBar.addTitleBarAndSetButtons(buttons);
38
+        topBar.addTitleBarAndSetButtons(screenParams.buttons);
39
+        topBar.setTitle(screenParams.title);
47
         addContentView();
40
         addContentView();
48
     }
41
     }
49
 
42
 
53
     }
46
     }
54
 
47
 
55
     private void addContentView() {
48
     private void addContentView() {
56
-        contentView = new ContentView(getContext(), screenId, passProps, this);
49
+        contentView = new ContentView(getContext(), screenParams.screenId, screenParams.passProps, this);
57
         addView(contentView, new LayoutParams(MATCH_PARENT, MATCH_PARENT));
50
         addView(contentView, new LayoutParams(MATCH_PARENT, MATCH_PARENT));
58
         contentView.init();
51
         contentView.init();
59
     }
52
     }

+ 5
- 0
android/app/src/main/java/com/reactnativenavigation/layouts/TopBar.java Целия файл

19
 
19
 
20
     public void addTitleBarAndSetButtons(List<TitleBarButtonParams> buttons) {
20
     public void addTitleBarAndSetButtons(List<TitleBarButtonParams> buttons) {
21
         titleBar = new TitleBar(getContext());
21
         titleBar = new TitleBar(getContext());
22
+        addView(titleBar);
22
         titleBar.setButtons(buttons);
23
         titleBar.setButtons(buttons);
23
     }
24
     }
24
 
25
 
25
     public void setTitleBarVisibility(boolean isHidden) {
26
     public void setTitleBarVisibility(boolean isHidden) {
26
         titleBar.setVisibility(isHidden ? GONE : VISIBLE);
27
         titleBar.setVisibility(isHidden ? GONE : VISIBLE);
27
     }
28
     }
29
+
30
+    public void setTitle(String title) {
31
+        titleBar.setTitle(title);
32
+    }
28
 }
33
 }