可以說我想臨時更改視圖的框架(例如,將其向右移動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