关于: iOS 5 & 6. CGAffineTransformationMake
我有:一个 UILabel 和一个 UIImage
我想做的事:我正在尝试创建一张翻转卡。当我点击 UIImage 时,它应该水平翻转并隐藏并且 UILabel 应该出现。几乎就像水平翻转棒球卡一样,正面有图像,背面有文字。当您点击 UILabel 时,它会以相同的方式翻转显示 UIImage。
问题是什么:我的代码在 iOS 6 上表现完美,但在 iOS 5 上转换看起来很奇怪。在 iOS 6 上,图像水平翻转以隐藏自身并显示文本。点击 uilabel 翻转文本以隐藏它并显示图像。奇迹般有效。但是当我在 iOS 5 上运行它时,点击图像时,文本会从屏幕底部以 180 度旋转出现,并带有螺旋运动。
我不想UIView transitionFromView: toView: duration: options: completion:^(bool)
仅仅因为还有一些其他不相关的问题与之相关,这是另一个线程的讨论。
代码片段的详细信息: 我的 UILabel 最初具有以下转换:
self.myLabel.transform = CGAffineTransformMake(0, 0, 0, 1, 0, 0);
点击 UIImage 或 UILabel 调用以下方法
- (IBAction)flipImage:(id)sender {
if(flipped == 0) {
[UIView animateWithDuration:0.5
delay:0.0
options: UIViewAnimationCurveEaseIn
animations:^{
self.myImage.transform = CGAffineTransformMake(0, 0, 0, 1, 0, 0);
self.myLabel.transform = CGAffineTransformMake(1, 0, 0, 1, 0, 0);
flipped = 1;
}
completion:^(BOOL finished){
NSLog(@"Flipped!");
}];
} else {
[UIView animateWithDuration:0.5
delay:0.0
options: UIViewAnimationCurveEaseOut
animations:^{
self.myLabel.transform = CGAffineTransformMake(0, 0, 0, 1, 0, 0);
self.myImage.transform = CGAffineTransformMake(1, 0, 0, 1, 0, 0);
flipped = 0;
}
completion:^(BOOL finished){
NSLog(@"Flipped!");
}];
}
}
有什么帮助吗?