Dar sombra a una vista o botón en iOS

Escrito por aserrano. Posteado en Desarrollo, iPhone, Objective C, Tecnología

Para dar sombra en general a cualquier vista (UIView) en iOS vamos a aprovecharnos de una propiedad incorporada a partir del SDK iOS 2.0 (si no recuerdo mal) los layers.

Como los layers pertenecen a la librería QuartzCore, acuérdate de incluirla a la hora de la compilación e importar también el fichero .h. Mi recomendación es incluirlo en el fichero .pch del proyecto y así lo tienes disponible a nivel global. Algo parecido a esto:

...
#ifdef __OBJC__
    #import <UIKit/UIKit.h>
    #import <Foundation/Foundation.h>
    // INCLUIR QUARTZCORE
    #import <QuartzCore/QuartzCore.h>
#endif
...

Ya sólo nos queda dar sombra a la vista. En este caso he usado una imagen para ilustrar el código.

...
    imageView.layer.masksToBounds = NO;    
    imageView.layer.cornerRadius = 8; // Si queremos esquinas redondeadas
    imageView.layer.shadowOffset = CGSizeMake(-15, 20);
    imageView.layer.shadowRadius = 5;
    imageView.layer.shadowOpacity = 0.5;
    imageView.layer.shadowPath = [UIBezierPath bezierPathWithRect:imageView.bounds].CGPath;
...

La imagen quedará así:

Ejemplo de sombra con iOS en una vista (UIView)

Etiquetas:, , ,

"Trackback" Enlace desde tu web.

Comentarios (3)

Deja un comentario

Time limit is exhausted. Please reload CAPTCHA.

Nota legal

(C) Antonio Serrano 2012