Gire (ángulo) una vista UIV, utilizando los attributes de time de ejecución definidos por el usuario

¿Es posible rotar una UIView o UIImageView, digamos 10 o 15 grados,

realmente usando attributes de time de ejecución definidos por el usuario?

¿O solo se puede hacer en código?

(Nota … Menciono "ángulo" y "por grados" en aras de Google; puede mezclarse con la idea de "girar" para cambiar la orientación del dispositivo).


De forma alternativa, ¿podría subclass UIView de tal manera que se expusiera un Atributo de time de ejecución definido por el usuario, que haga exactamente esto? (Estoy oxidado: /)

Puede usar la layer.transform.rotation.z key UIView para el object UIView .
El valor debe establecerse en radianes:

introduzca la descripción de la imagen aquí

Resultado:

introduzca la descripción de la imagen aquí

Todas las routes de keys de transformación se presentan en la documentation de Apple .

En extensión a esta respuesta ¿Cómo acceder al atributo de time de ejecución definido por el usuario del object 'emisor'? , puede recuperar el valor del time de ejecución como NSNumber en grados y luego realizar la rotation. IBAction la IBAction en el generador de interfaces cuando desee que se produzca la rotation.

 #define RADIANS(degrees) ((degrees * M_PI) / 180.0) @interface RTFRotatingView : UIView @end @implementation RTFRotatingView - (IBAction)performRotation:(UIControl *)sender { if ([sender respondsToSelector:@selector(keyName)]) { NSNumber *degrees = [sender valueForKey:@"keyName"]; CGAffineTransform rotateTransform = CGAffineTransformRotate(CGAffineTransformIdentity, RADIANS(degrees.doubleValue)); self.transform = rotateTransform; } } @end