Search code examples
iosiphoneuiimageview

Fold/curl edge of UIImageView


I need to fold/unfold the edge of UIImageView to mark as a favorite. I searched across multiple sites, but have not found anything about it.

I attached some example images, and, if possible, with animation effect.

Fold Fold 2


Solution

  • One way to do it would be to animate the view usign OpenGL. There is a nice library for that called XBPageCurl

    However, you could achieve a much lighter solution by creating a mask for the curl effect and animate your view while transitioning to it. Here is what it would look like

    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:0.3];
    
    UIImage *maskedImage = [yourImage imageMaskedWithImage:yourMask];
    [yourImageView setImage:maskedImage];
    
    [UIView commitAnimations];
    

    To know how to mask an image, have a look here http://mobiledevelopertips.com/cocoa/how-to-mask-an-image.html