diff --git a/src/components/app/ionic.scss b/src/components/app/ionic.scss
index 9783eb0f1f..57d516e577 100644
--- a/src/components/app/ionic.scss
+++ b/src/components/app/ionic.scss
@@ -45,7 +45,8 @@
@import
"../checkbox/extensions/ios",
"../list/extensions/ios",
- "../item/extensions/ios";
+ "../item/extensions/ios",
+ "../switch/extensions/ios";
// Icons
diff --git a/src/components/switch/extensions/ios.scss b/src/components/switch/extensions/ios.scss
new file mode 100644
index 0000000000..de8a5f3074
--- /dev/null
+++ b/src/components/switch/extensions/ios.scss
@@ -0,0 +1,38 @@
+
+// iOS Switch
+// --------------------------------------------------
+
+$switch-ios-width: 52px !default;
+$switch-ios-height: 32px !default;
+$switch-ios-slider-off-background: #fff !default;
+$switch-ios-slider-on-background: #4cd964 !default;
+$switch-ios-toggle-on-background: #fff !default;
+
+
+.switch-ios {
+
+ .switch-toggle {
+ width: $switch-ios-width;
+ height: $switch-ios-height;
+ border-radius: $switch-ios-height / 2;
+
+ background: #e5e5e5;
+ }
+
+ .switch-toggle:before {
+ background: $switch-ios-slider-off-background;
+ }
+
+ .switch-toggle:after {
+ box-shadow: 0 2px 5px rgba(0,0,0,.4);
+ }
+
+ &[aria-checked=true] .switch-toggle {
+ background: $switch-ios-slider-on-background;
+ }
+
+ &[aria-checked=true] .switch-toggle:before {
+ @include scale(0);
+ }
+
+}
diff --git a/src/components/switch/switch.js b/src/components/switch/switch.js
index b762579e8b..df43097b4d 100644
--- a/src/components/switch/switch.js
+++ b/src/components/switch/switch.js
@@ -1,71 +1,64 @@
-import {NgElement, Component, Template} from 'angular2/angular2';
+import {Component, Template, NgElement, PropertySetter} from 'angular2/angular2'
+import {ComponentConfig} from 'ionic2/config/component-config'
+
+export let SwitchConfig = new ComponentConfig('switch')
@Component({
selector: 'ion-switch',
bind: {
checked: 'checked'
- }
+ },
+ events: {
+ 'click': 'onClick()'
+ },
+ services: [SwitchConfig]
})
@Template({
inline: `
-
-
-