Daniel Zlotin 8 år sedan
förälder
incheckning
93055be76f

+ 15
- 10
lib/android/app/src/main/java/com/reactnativenavigation/layout/LayoutFactory.java Visa fil

4
 
4
 
5
 import com.facebook.react.ReactInstanceManager;
5
 import com.facebook.react.ReactInstanceManager;
6
 import com.reactnativenavigation.layout.impl.ReactRootViewController;
6
 import com.reactnativenavigation.layout.impl.ReactRootViewController;
7
+import com.reactnativenavigation.viewcontrollers.BottomTabsController;
7
 import com.reactnativenavigation.viewcontrollers.StackController;
8
 import com.reactnativenavigation.viewcontrollers.StackController;
8
 import com.reactnativenavigation.viewcontrollers.ViewController;
9
 import com.reactnativenavigation.viewcontrollers.ViewController;
9
 
10
 
11
+import java.util.ArrayList;
12
+import java.util.List;
13
+
10
 public class LayoutFactory {
14
 public class LayoutFactory {
11
 
15
 
12
 	private final Activity activity;
16
 	private final Activity activity;
24
 			case ContainerStack:
28
 			case ContainerStack:
25
 			default:
29
 			default:
26
 				return createContainerStack(node);
30
 				return createContainerStack(node);
27
-//			case BottomTabs:
28
-//				return createBottomTabs(node);
31
+			case BottomTabs:
32
+				return createBottomTabs(node);
29
 //			case SideMenuRoot:
33
 //			case SideMenuRoot:
30
 //				return createSideMenuRoot(node);
34
 //				return createSideMenuRoot(node);
31
 //			case SideMenuCenter:
35
 //			case SideMenuCenter:
84
 		return stackController;
88
 		return stackController;
85
 	}
89
 	}
86
 
90
 
87
-//	private Layout createBottomTabs(LayoutNode node) {
88
-//		final BottomTabsLayout tabsContainer = new BottomTabsLayout(activity);
89
-//		for (int i = 0; i < node.children.size(); i++) {
90
-//			final Layout tabLayout = createAndSaveToStore(node.children.get(i));
91
-//			tabsContainer.addTab("#" + i, tabLayout);
92
-//		}
93
-//		return tabsContainer;
94
-//	}
91
+	private ViewController createBottomTabs(LayoutNode node) {
92
+		final BottomTabsController tabsContainer = new BottomTabsController(activity, node.id);
93
+		List<ViewController> tabs = new ArrayList<>();
94
+		for (int i = 0; i < node.children.size(); i++) {
95
+			tabs.add(create(node.children.get(i)));
96
+		}
97
+		tabsContainer.setTabs(tabs);
98
+		return tabsContainer;
99
+	}
95
 }
100
 }

+ 0
- 1
lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/BottomTabsController.java Visa fil

37
 		bottomNavigationView.setOnNavigationItemSelectedListener(this);
37
 		bottomNavigationView.setOnNavigationItemSelectedListener(this);
38
 		RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(MATCH_PARENT, WRAP_CONTENT);
38
 		RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(MATCH_PARENT, WRAP_CONTENT);
39
 		lp.addRule(ALIGN_PARENT_BOTTOM);
39
 		lp.addRule(ALIGN_PARENT_BOTTOM);
40
-		bottomNavigationView.setLayoutParams(lp);
41
 		root.addView(bottomNavigationView, lp);
40
 		root.addView(bottomNavigationView, lp);
42
 		return root;
41
 		return root;
43
 	}
42
 	}