可以说我想临时更改视图的框架(例如,将其向右移动10px--可能与突出显示更改有关)。这是改变现有视图的UIView框架的最好方法吗?
我以为伪代码会是这样的
self.someView.frame.origin.x += 10.0f;
但是这给了我的
lvalue required as left operand of assignment
错误所以我做什么,而不是在做一个新的CGRect代表帧,改变该CGRect然后给视图的CGRect,因为它的框架
CGRect aFrame = self.someView.frame;
aFrame.origin.x += 10.0f;
[self.someView setFrame:aFrame];
似乎有趣,我可以m在CGRect上做一个赋值,但不在CGRect的视图框架上。
那么,这是改变现有视图框架的最佳方式吗?
对于奖励积分:为什么我不能直接在视图的框架属性上分配一个新的值,为什么我必须击打这样的灌木丛呢?
谢谢
谢谢Ole。我现在看到,由于视图的框架属性设置为接收CGRect,因此不会设置相同的属性来了解CGRect的工作原理。矩形只是一个值得传递给它的值。如果我将框架放入它自己的var中,那么它知道CGRects如何工作,以便我可以操纵该结构。灯泡时刻! – davidamcclain 2010-10-17 14:49:45