我一直在尝试使用cgsizemake
,如下所示:
我尝试使用cgrectmake
而不是更改坐标来使我的图像的帧尺寸不同。
到目前为止,我已经尝试了
maincharacter.frame = cgsizemake (14, 14);
但我一直收到错误
从不兼容类型CGsize分配给cgrect
提前致谢。
答案 0 :(得分:18)
一种解决方案是:
CGRect frame = maincharacter.frame;
frame.size = CGSizeMake(14, 14);
maincharacter.frame = frame;
答案 1 :(得分:13)
CGSize只接受高度和宽度
CGSize c=CGSizeMake(width, height);
如果要设置帧大小,请使用CGRectMake
maincharacter.frame=CGRectMake(x-origin,y-origin, width, height);
答案 2 :(得分:1)
maincharacter.frame必须返回(x,y,width,height)4个参数,而CGSizeMake只有“width”和“height”2个参数。所以你有一个错误。解决方案是使用frame.size,它返回2个参数以使用CGSizeMake(14,14)。
答案 3 :(得分:1)
CGSize viewwidth;
viewwidth=[[UIScreen mainScreen] bounds].size;
这将帮助您使用cgsize获取设备当前分辨率。
viewwidth.width or viewwidth.height
如上所述你可以使用它。以及如下代码
rightslide=[[UIView alloc]initWithFrame:CGRectMake(0,0, viewwidth.width, viewwidth.height)];
答案 4 :(得分:0)
要使用c
类型的变量CGSize
,您可以分别调用c.0
和c.1
作为高度和宽度。我不知道为什么他们将这些属性命名为0和1,但你必须接受Dennis Ritchie
以下是CGSizeMake
的示例用法:
var makeSize = CGSizeMake(size.0, size.1)
let circ = SKShapeNode(ellipseOfSize: makeSize)
希望有所帮助。
答案 5 :(得分:0)
是在UIScrollView
中使用CGSizeMake的示例var mainScrollView: UIScrollView?
var numPages = 3
override func viewDidLoad() {
super.viewDidLoad()
//this gets the screen frames size
var fm: CGRect = UIScreen.mainScreen().bounds
//creates a UIScrollView programmatically
self.mainScrollView = UIScrollView(frame:CGRectMake(0, 0, fm.size.width, fm.size.height))
self.mainScrollView!.contentSize = CGSizeMake(self.mainScrollView!.frame.size.width, self.mainScrollView!.frame.size.height * CGFloat(numPages))
}