|
@@ -8,7 +8,7 @@ import com.reactnativenavigation.react.ImageLoader;
|
8
|
8
|
import java.util.ArrayList;
|
9
|
9
|
import java.util.List;
|
10
|
10
|
|
11
|
|
-public class TitleBarButtonParamsParser {
|
|
11
|
+public class TitleBarButtonParamsParser extends Parser {
|
12
|
12
|
public static List<TitleBarButtonParams> parse(Bundle params) {
|
13
|
13
|
List<TitleBarButtonParams> result = new ArrayList<>();
|
14
|
14
|
if (params == null) {
|
|
@@ -23,15 +23,21 @@ public class TitleBarButtonParamsParser {
|
23
|
23
|
|
24
|
24
|
private static TitleBarButtonParams parseItem(Bundle bundle) {
|
25
|
25
|
TitleBarButtonParams result = new TitleBarButtonParams();
|
26
|
|
- result.label = bundle.getString("label");
|
27
|
|
- result.icon = ImageLoader.loadImage(bundle.getString("icon"));
|
|
26
|
+ result.label = bundle.getString("title");
|
|
27
|
+ if (hasKey(bundle,"icon")) {
|
|
28
|
+ result.icon = ImageLoader.loadImage(bundle.getString("icon"));
|
|
29
|
+ }
|
28
|
30
|
result.color = ColorParser.parse(bundle.getString("color"));
|
29
|
31
|
result.showAsAction = parseShowAsAction(bundle.getString("showAsAction"));
|
30
|
|
- result.enabled = bundle.getBoolean("enabled");
|
|
32
|
+ result.enabled = bundle.getBoolean("enabled", true);
|
31
|
33
|
return result;
|
32
|
34
|
}
|
33
|
35
|
|
34
|
36
|
private static TitleBarButtonParams.ShowAsAction parseShowAsAction(String showAsAction) {
|
|
37
|
+ if (showAsAction == null) {
|
|
38
|
+ return TitleBarButtonParams.ShowAsAction.IfRoom;
|
|
39
|
+ }
|
|
40
|
+
|
35
|
41
|
switch (showAsAction) {
|
36
|
42
|
case "always":
|
37
|
43
|
return TitleBarButtonParams.ShowAsAction.Always;
|