Add "Rubber Band" effect in android while changing background of application

3.7k Views Asked by At

I am working on the application in which:

User will have a control to change the background and text (multiples) by doing horizontal swipe for BG and vertical swipe for text. In this case, if I am changing BG, text should remain constant and if I am changing text then BG should remain constant.

Also, I want to add Rubber Band effect like in iOS when user changes Text and BG.

I am thinking of twoway-view library to support for vertical and horizontal scrolling. But how to use this library in my case?

Any idea/solution will be appreciated.

3

There are 3 best solutions below

1
On

twoway-view implements an AdapterView that can scroll vertically or horizontally, but not both at the same time. It wouldn't work in your case.

I would use a ViewPager in which each fragment:

  1. Shows a certain background
  2. Lets the user select the text through swipe up and down gestures.

To obtain a rubber band effect, just add a BounceInterpolator to the animation that moves the text up & down. In the ViewPager you could get a similar effect applying a custom PageTransformer.

0
On

You will probably need to use a combination of GestureDetector, SimpleOnGestureListener and TranslateAnimation on your layout. This can be fairly involved but you can find a Translation example at this SO question and GestureDetector/SimpleOnGestureListener example here. Hopefully you can figured out how to adapt the code to suit your needs.

1
On

You can try this library for the Rubber Band effect: AndroidViewAnimations