Skeuomorphism effect in Android
 
  
public class Skeuomorphism {
    public static void applyShadowAndPressedState(Button button) {
        float radius = 8f;
        float[] corners = { radius, radius, radius, radius, radius, radius, radius, radius };
        int fillColor = Color.parseColor("#D8D8D8");
        int strokeColor = Color.parseColor("#333333");
        float strokeSize = 1f;
        int shadowColor = Color.parseColor("#8C8C8C");
        float shadowSize = 4f;
        StateListDrawable stateListDrawable = new StateListDrawable();
        ShapeDrawable shapeDrawableNormal = new ShapeDrawable();
        shapeDrawableNormal.setShape(new RoundRectShape(corners, null, null));
        shapeDrawableNormal.getPaint().setColor(fillColor);
        shapeDrawableNormal.getPaint().setStyle(Paint.Style.FILL);
        shapeDrawableNormal.setStroke((int) strokeSize, strokeColor);
        ShapeDrawable shapeDrawablePressed = new ShapeDrawable();
        shapeDrawablePressed.setShape(new RoundRectShape(corners, null, null));
        shapeDrawablePressed.getPaint().setColor(fillColor);
        shapeDrawablePressed.getPaint().setStyle(Paint.Style.FILL);
        shapeDrawablePressed.setStroke((int) strokeSize, strokeColor);
        shapeDrawablePressed.getPaint().setShadowLayer(shadowSize, 0, 0, shadowColor);
        stateListDrawable.addState(new int[]{android.R.attr.state_pressed}, shapeDrawablePressed);
        stateListDrawable.addState(new int[]{}, shapeDrawableNormal);
        button.setBackground(stateListDrawable);
    }
}