You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift中CGRectMake不可用报错求助,求正确代码示例

解决Swift中“CGRectMake不可用”的问题

嘿,我来帮你搞定这个报错~CGRectMake确实在Swift里被废弃了,现在我们需要用Swift风格的CGRect初始化方式,你当前写的代码问题在于缺少参数标签,Swift的CGRect初始化器要求显式指定x、y、width、height这些参数名,或者用更简洁的写法来创建。

给你两种确切的解决方法:

方法一:带参数标签的完整初始化

直接在初始化时指定每个参数的标签,这是最清晰的写法:

scrollView.frame = CGRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height)

方法二:利用origin和size简化写法

如果你的原点是(0,0)(也就是.zero),还可以用origin+size的组合来简化代码,看起来更清爽:

scrollView.frame = CGRect(origin: .zero, size: self.view.frame.size)

简单解释下:Swift里的CGRect初始化器不再支持像Objective-C那样直接传四个无标签的数值,必须明确标注参数名,这样代码可读性也更高。如果之后你需要创建其他位置的frame,只需要修改对应的x、y值就好啦。

内容的提问来源于stack exchange,提问作者Michelle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:24:56