ASOAnimatedButton is a storyboard-friendly library to animate button to have a two-state or bounce effect. Refer to its project examples for its various implementations.