When you press the button to change the direction. Start the turning animtion.
When the turning animation finishes you can set the regular animation, and flipped.
You can use the "On finished" condition to check when the turning animation has finished.
Hope that helps.
This is the first way I'd go about it - it will also look smoother (animations will blend together better, most likely).
You could use a boolean system for a change in animation, but you could also use velocity.X of the player character to work out when to trigger or finish the animation.