diff --git a/CrossPlatformModules.csproj b/CrossPlatformModules.csproj
index ee9f7bcc8..e52657c78 100644
--- a/CrossPlatformModules.csproj
+++ b/CrossPlatformModules.csproj
@@ -67,6 +67,9 @@
action-items-text.xml
+
+ all-between-tags.xml
+
center-view-stack.xml
@@ -119,12 +122,14 @@
+
Designer
+
Designer
@@ -989,7 +994,9 @@
-
+
+ Designer
+
Designer
diff --git a/apps/action-bar-demo/main-page.xml b/apps/action-bar-demo/main-page.xml
index 45d4c3a88..82daa903c 100644
--- a/apps/action-bar-demo/main-page.xml
+++ b/apps/action-bar-demo/main-page.xml
@@ -19,6 +19,7 @@
+
\ No newline at end of file
diff --git a/apps/action-bar-demo/pages/all-between-tags.ts b/apps/action-bar-demo/pages/all-between-tags.ts
new file mode 100644
index 000000000..6063b059f
--- /dev/null
+++ b/apps/action-bar-demo/pages/all-between-tags.ts
@@ -0,0 +1,5 @@
+import observable = require("data/observable");
+
+export function onTapped(args: observable.EventData) {
+ console.log(`Tapped ${(args.object).text}`);
+}
diff --git a/apps/action-bar-demo/pages/all-between-tags.xml b/apps/action-bar-demo/pages/all-between-tags.xml
new file mode 100644
index 000000000..240d97c21
--- /dev/null
+++ b/apps/action-bar-demo/pages/all-between-tags.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/apps/action-bar-demo/pages/navigation-button.ts b/apps/action-bar-demo/pages/navigation-button.ts
index 37a544a68..9890c7a17 100644
--- a/apps/action-bar-demo/pages/navigation-button.ts
+++ b/apps/action-bar-demo/pages/navigation-button.ts
@@ -44,5 +44,5 @@ export function visibilityTap(args: observable.EventData) {
}
export function navTap(args: observable.EventData) {
- console.log("navigation button tapped");
+ console.log("(Android only) Navigation button tapped");
}
diff --git a/apps/tests/ui/action-bar/ActionBar_BetweenTags.xml b/apps/tests/ui/action-bar/ActionBar_BetweenTags.xml
new file mode 100644
index 000000000..d50c1a78e
--- /dev/null
+++ b/apps/tests/ui/action-bar/ActionBar_BetweenTags.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/apps/tests/ui/action-bar/action-bar-tests-common.ts b/apps/tests/ui/action-bar/action-bar-tests-common.ts
index 81d5eac6d..3bf251183 100644
--- a/apps/tests/ui/action-bar/action-bar-tests-common.ts
+++ b/apps/tests/ui/action-bar/action-bar-tests-common.ts
@@ -324,6 +324,28 @@ export function test_Setting_ActionItemsWithNumberAsText_doesnt_thrown() {
}
}
+export function test_CanDefineEverythingAsContentBetweenTheTwoTags() {
+ var moduleName = __dirname.substr(fs.knownFolders.currentApp().path.length);
+ helper.navigateToModuleAndRunTest(moduleName + "/ActionBar_BetweenTags", undefined, (page: PageModule.Page) => {
+
+ TKUnit.assertNotNull(page.actionBar.navigationButton);
+ TKUnit.assertEqual(page.actionBar.navigationButton.text, "nb");
+
+ TKUnit.assertNull(page.actionBar.title);
+ TKUnit.assertNotNull(page.actionBar.titleView);
+ TKUnit.assertTrue(page.actionBar.titleView instanceof LabelModule.Label);
+ TKUnit.assertEqual((page.actionBar.titleView).text, "tv");
+
+ TKUnit.assertNotNull(page.actionBar.actionItems);
+ var items = page.actionBar.actionItems.getItems();
+ TKUnit.assertEqual(items.length, 3);
+
+ TKUnit.assertEqual(items[0].text, "i1");
+ TKUnit.assertEqual(items[1].text, "i2");
+ TKUnit.assertEqual(items[2].text, "i3");
+ });
+}
+
export function createPageAndNavigate() {
var page: PageModule.Page;
var pageFactory = function (): PageModule.Page {
diff --git a/tsconfig.json b/tsconfig.json
index 93f0a4aa5..b352f0d50 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -39,6 +39,7 @@
"apps/action-bar-demo/pages/action-bar-hidden.ts",
"apps/action-bar-demo/pages/action-items-icon.ts",
"apps/action-bar-demo/pages/action-items-text.ts",
+ "apps/action-bar-demo/pages/all-between-tags.ts",
"apps/action-bar-demo/pages/center-view-segmented.ts",
"apps/action-bar-demo/pages/center-view-stack.ts",
"apps/action-bar-demo/pages/center-view.ts",
diff --git a/ui/action-bar/action-bar-common.ts b/ui/action-bar/action-bar-common.ts
index 38d12be7c..dd680fdb6 100644
--- a/ui/action-bar/action-bar-common.ts
+++ b/ui/action-bar/action-bar-common.ts
@@ -129,8 +129,10 @@ export class ActionBar extends view.View implements dts.ActionBar {
if (value instanceof dts.NavigationButton) {
this.navigationButton = value;
}
-
- if (value instanceof view.View) {
+ else if (value instanceof dts.ActionItem) {
+ this.actionItems.addItem(value);
+ }
+ else if (value instanceof view.View) {
this.titleView = value;
}
}