CGAffineTransformMakeTranslation and CGAffineTransformScale are converted to ios7 and ios8
I have a UITableView in a viewcontroller and want to zoom out in the viewController control center. It works fine in ios7, just like the following code:
CGSize appSize = [[UIScreen mainScreen] applicationFrame].size;
CGAffineTransform affineMatrix = CGAffineTransformMakeTranslation(appSize.width/2, 20);
affineMatrix = CGAffineTransformScale(affineMatrix, 0.5, 0.5);
self.transform = affineMatrix;
after upgrading to ios8 the code might like that it works fine, but in ios7 it doesn't work:
CGAffineTransform affineMatrix = CGAffineTransformMakeScale(0.5, 0.5);
affineMatrix = CGAffineTransformConcat(affineMatrix,CGAffineTransformMakeTranslation(0, -appSize.height/2+40));
self.transform = affineMatrix;
who can explain why? How can I work fine in the same code?
+3
source to share
1 answer
See article http://revealapp.com/blog/constraints-and-transforms.html
It explains the affine conversions bug in iOS7. For simple words, you need to manually convert points to pixels on retina devices on iOS 7 using[UIScreen mainScreen].scale
0
source to share