如何设置contentScaleFactor iOS

如何设置contentScaleFactor iOS,ios,glkview,Ios,Glkview,以下内容不起作用 GLKView *view = (GLKView *)self.view; view.contentScaleFactor=1.0; 记录视图和[UIScreen Main Screen]对象: <GLKView: 0x15638f60; frame = (0 0; 320 568); autoresize = RM+BM; layer = <CAEAGLLayer: 0x15638960>> <UIScreen: 0x15629

以下内容不起作用

    GLKView *view = (GLKView *)self.view;
    view.contentScaleFactor=1.0;
记录
视图
[UIScreen Main Screen]
对象:

<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]比例]仍然是2.0而不是1.0


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

[UIScreen Main Screen]。比例是用户正在使用的物理设备的实际比例

(除非你有非常旧的机器,否则它总是“2.0”。“3.0”机器很快就会从苹果公司推出,显然是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);

希望它在某些方面有所帮助

我的问题是对缩放的理解不够。我认为2.0意味着1/4点/像素,而实际上它是1/1,1.0是1/4。我接受你的答案,因为它是唯一的一个:D我通常只删除没有答复的问题,这就是为什么我只有这么少的原因:D