MLProgrammer-CiM
MLProgrammer-CiM

Reputation: 17257

Animating action bar icons appearing on fragment changes

My current app has fragment and slidingUpCard navigation. Each one of them has a different set of active ActionBar elements and the buttons change with the screen. I was wondering if there was a way of animating the buttons coming and going similar to what android:animateLayoutChanges would do for a LinearLayout.

Upvotes: 3

Views: 970

Answers (1)

Nikola Despotoski
Nikola Despotoski

Reputation: 50548

On your question. I'm not sure if it is possible to add animateLayoutChanges to the ActionBarContainer that holds the ActionBar. But still you can access the ActionBarView in same manner as you will see a bit down in this answer.

Hierarchy: ActionBarContainer -> ActionBarView -> AbsActionBarView -> ViewGroup

Idea:

Take a look at this gist and see how menu items are accessed and referenced as View

Next:

  1. Hide all menu item but get their icon resource or entire View you see in the gist.

  2. Use ObjectAnimator or ViewPropertyAnimator to animate the xfor going in and out.

  3. Once the animation has ended, change the visibilty of the menus

Note that this is dirty way. It can be slow due to the reflection.

Upvotes: 3

Related Questions