I have 2014 v1.0 universal app that has a slight view misalignment with iOS 11 (not with 10 and below). I don't know if this was before AutoLayout or not, but at the time the only issue was to take advantage of 568x320pt (landscape only app) vs. 480x320, so basically I hacked/hard coded the changes using
CGFloat mainScreenHeight = [[UIScreen mainScreen] bounds].size.height;
CGFloat mainScreenWidth = [[UIScreen mainScreen] bounds].size.width;
to make the fix (basically checking whether the width was 568), and it seemed to work with iOS 7-10 with ALL devices until 11.
Anyway, I'm digging into the old code, found the hack, spent HOURS and hours thinking and trying to do it all with AutoLayout, and finally decided to back to the hack.
The problem now is that no matter what device I use in the simulator, the code above ALWAYS returns 568x320 instead of 667x375, 414x736, etc.. And with the exception of the X (the embedded scrollview doesn't line up exactly at the start) my tweaked hard-code seems to fix the issue on all the newer devices (on the simulator).
What am I missing here? Why does Xcode always return the point size for a 4" device?