7

我动态添加了一个视图,但是当它出现在表单上时,它位于左上角。

在哪里设置新子视图的 X 和 Y?

4

2 回答 2

18

您应该设置框架属性:

myView.frame = CGRectMake(10,10,200,100);

这会将视图定位在位置 (10,10),大小为 200x100

于 2010-01-18T13:45:15.783 回答
3

同意。请注意,您不能像预期的那样单独更改坐标。也就是说,这不起作用:

self.mysubview.frame.origin.x += 17;   // FAILS! Not assignable!!

如果计算所需的所有其他坐标很痛苦,您可以 (a) 将其吸收或 (b) 执行以下操作:

CGRect theFrame = self.mysubview.frame;
theFrame.origin.x += 17;
self.mysubview.frame = theFrame;  // this is legal
于 2014-01-06T21:23:11.007 回答