rotation - Transformar(rotar) un UIBarButtonItem
cgaffinetransform (2)
¿Alguien sabe cómo transformar un UIBarButtonItem?
Intenté esto pero sin resultados :( No está funcionando tanto en UIBarButtonItem como en su vista personalizada.
[UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:5.0f]; CGAffineTransform myTransform = CGAffineTransformMakeRotation(M_PI_2); UIBarButtonItem * currentItem = [self.toolbarItems objectAtIndex:4]; currentItem.customView.transform = myTransform; [UIView commitAnimations];
Confirmo que la transformación funciona en otras vistas (lo intenté con self.view).
Gracias !
UIBarButtonItem no extiende UIView, por lo que no se puede transformar directamente. Puede agregar el UIBarButtonItem que desea transformar a una UIToolbar, transformar la UIToolbar y luego agregar la barra de herramientas como una vista personalizada a otro UIBarButtonItem. Este elemento se puede establecer como un elemento de navegación o agregarse a otra UIToolbar.
UIBarButtonItem *backItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemPlay target:self action:@selector(handleForwardItemTouch:)];
UIToolbar *backToolbar = [[[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 44, 44)] autorelease];
[backToolbar setTransform:CGAffineTransformMakeScale(-1, 1)];
UIBarButtonItem *backToolbarItem = [[[UIBarButtonItem alloc] initWithCustomView:backToolbar] autorelease];
self.navigationItem.rightBarButtonItem = backToolbarItem;
utilizar:
UIView *view = [backItem valueForKey:@"view"];
view.transform = CGAffineTransformMakeScale(-1, 1);