以下无效。
GLKView *view = (GLKView *)self.view;
view.contentScaleFactor=1.0;
记录view
和[UIScreen mainScreen]
个对象:
<GLKView: 0x15638f60; frame = (0 0; 320 568); autoresize = RM+BM; layer = <CAEAGLLayer: 0x15638960>>
<UIScreen: 0x15629a60; bounds = {{0, 0}, {320, 568}}; mode = <UIScreenMode: 0x15629c40; size = 640.000000 x 1136.000000>>
且[[UIScreen mainScreen] scale];
仍然是2.0而不是1.0
我是否需要在其他对象上设置比例因子?
答案 0 :(得分:1)
[UIScreen mainScreen] .scale是用户正在使用的物理设备的实际比例。
(它始终是&#34; 2.0&#34;除非你拥有令人难以置信的旧机器。&#34; 3.0&#34;机器即将推出Apple,2014年显然。)
这是一个典型的例子......
float isf = 1.0 / [UIScreen mainScreen].scale;
CGPatternRef strokePattern = CGPatternCreate(
NULL,
CGRectMake(0,0,wholeWidth,wholeHeight),
CGAffineTransformScale(
CGAffineTransformIdentity,
isf,-isf),
wholeWidth,wholeHeight,
kCGPatternTilingNoDistortion,
true,
&kPatternCallbacks);
希望它在某种程度上有所帮助!