Support player sleep

Also use alpha animaion instead of Drawable.setAlpha, as the alpha
value applied to all instances of an image resource