【发布时间】:2015-06-23 06:26:14
【问题描述】:
这里基本上发生的是,我正在向 UIBarButtonItem 添加一个自定义视图,并且我需要将其旋转 45deg ,如果旋转 90deg 或 180 旋转效果很好,但是当它小于 90 时对象得到变形,在 45 度时物体消失。 这是按钮和动画的 sn-ps。
UIImageView * menuImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"plus.png"]];
menuButton = [[UIBarButtonItem alloc] initWithCustomView:menuImage];
UITapGestureRecognizer * tap1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(toggleMenuView:)];
[menuImage addGestureRecognizer:tap1];
[menuImage setUserInteractionEnabled:YES];
[menuImage.layer setShadowColor:[UIColor blackColor].CGColor];
[menuImage.layer setShadowOffset:CGSizeMake(ShadowSizeWidth, ShadowSizeHeight)];
[menuImage.layer setShadowOpacity:ShadowOpacity];
[menuImage.layer setShadowRadius:ShadowRadius];
[self.navigationItem setRightBarButtonItem:menuButton];
旋转:
[UIView animateWithDuration:animationRotateButtonDuration delay:0.0f options:UIViewAnimationCurveLinear animations:^{
CGAffineTransform myTransform = CGAffineTransformMakeRotation(-M_PI_4);
UIBarButtonItem * currentItem = menuButton;
currentItem.customView.transform = myTransform;
}completion:^(BOOL finished){
}];
【问题讨论】:
-
我也在尝试旋转条形按钮项目的自定义视图并遇到同样的问题。其他视图按 M_PI_4 旋转就好了,所以我想知道这是否与 UIBarButtonItem(?)有关。
-
UIBarButtonItem 将自定义视图作为背景,现在实现这项工作的技巧是,我选择的自定义视图是一个 UIImageView,它有另一个 UIImageView 作为子项,我必须旋转第二个 UIImageView 来制作这项工作。我认为它与 UIBarButtonItem 有关。
标签: ios animation uiimageview rotation uibarbuttonitem