10

I have a navigation bar that is set up and controlled completely with code. So it does not show up in IB. I have a button appear by "self.navigationitem.rightbarbutton = myButton;" An I make it go away by setting it equal to NIL. What I am wondering is how could I make it fade in and out?

user804306
  • 777
  • 1
  • 8
  • 15

3 Answers3

23

I found what worked best for me

[self.navigationItem setRightBarButtonItem:myButton animated:YES];

And then

[self.navigationItem setRightBarButtonItem:nil animated:YES];

To make it fade out.

Sharad Chauhan
  • 4,821
  • 2
  • 25
  • 50
user804306
  • 777
  • 1
  • 8
  • 15
2

Swift version

fade in: navigationItem.setRightBarButtonItem(myButton, animated: true)

fade out: navigationItem.setRightBarButtonItem(nil, animated: true)

budiDino
  • 13,044
  • 8
  • 95
  • 91
0

Unfortunately there is no built in way to animate this for bar button items in a navigation bar. UIBarButtonItem is not a view or a control so it does not have animatable properties like alpha.

For bar button items in a UIToolbar, there is a way to animate. See this answer for details:

Is it possible to use Core Animation to fade out a UIBarButtonItem?

Community
  • 1
  • 1
Age Mooij
  • 824
  • 4
  • 14