如何设置contentScaleFactor iOS

时间:2014-05-18 01:15:23

标签: ios glkview

以下无效。

    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

我是否需要在其他对象上设置比例因子?

1 个答案:

答案 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);

希望它在某种程度上有所帮助!