Module: ProMotion::StatusBarModule
- Included in:
- ScreenModule
- Defined in:
- lib/ProMotion/screen/status_bar_module.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #hide_status_bar(opts = {}) ⇒ Object
- #preferredStatusBarStyle ⇒ Object
- #preferredStatusBarUpdateAnimation ⇒ Object
- #prefersStatusBarHidden ⇒ Object
- #show_status_bar(opts = {}) ⇒ Object
- #update_status_bar_appearance(opts = {}) ⇒ Object
Class Method Details
.included(base) ⇒ Object
73 74 75 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 73 def self.included(base) base.extend(ClassMethods) end |
Instance Method Details
#hide_status_bar(opts = {}) ⇒ Object
27 28 29 30 31 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 27 def (opts = {}) @previous_status_bar_style = self.class. self.class.(:hidden) (opts) end |
#preferredStatusBarStyle ⇒ Object
3 4 5 6 7 8 9 10 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 3 def preferredStatusBarStyle styles = { light: UIStatusBarStyleLightContent, dark: UIStatusBarStyleDefault, default: UIStatusBarStyleDefault } styles[self.class. || app.delegate.] || styles[:default] end |
#preferredStatusBarUpdateAnimation ⇒ Object
12 13 14 15 16 17 18 19 20 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 12 def preferredStatusBarUpdateAnimation animations = { none: UIStatusBarAnimationNone, fade: UIStatusBarAnimationFade, slide: UIStatusBarAnimationSlide, default: UIStatusBarAnimationFade } animations[self.class. || app.delegate.] || animations[:default] end |
#prefersStatusBarHidden ⇒ Object
22 23 24 25 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 22 def prefersStatusBarHidden style = self.class. || app.delegate. [:none, :hidden].include?(style) end |
#show_status_bar(opts = {}) ⇒ Object
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 33 def (opts = {}) new_style = case @previous_status_bar_style when nil, :hidden, :none opts[:style] || app.delegate. || :default else @previous_status_bar_style end self.class.(new_style) (opts) end |
#update_status_bar_appearance(opts = {}) ⇒ Object
44 45 46 47 48 49 50 |
# File 'lib/ProMotion/screen/status_bar_module.rb', line 44 def (opts = {}) if opts[:animated] == true UIView.animateWithDuration(0.3, animations: -> { setNeedsStatusBarAppearanceUpdate }) else setNeedsStatusBarAppearanceUpdate end end |