2012-05-29 49 views
0

我無法設置標籤和圖像位置programmaticaly。我想設置是,iOS無法設置元素位置programmaticaly

navBarSocial.frame = CGRectMake(navBarSocial.frame.origin.x, navBarSocial.frame.origin.y, webView1.frame.size.width, navBarSocial.frame.size.height); 

status.frame = CGRectMake(100, 50, status.frame.size.width, status.frame.size.height); 
loadingImage.frame = CGRectMake(100, 50, loadingImage.frame.size.width, loadingImage.frame.size.height); 

navBarSocial適當提高其witdth但標籤(狀態)和loadingImage保持在相同的位置。我還設置了在xib上停用的自動調整屬性,但沒有成功。謝謝。

回答

1
loadingImage.frame = CGRectMake(100, 50, loadingImage.frame.size.width, loadingImage.frame.size.height); 

loadingImage將其寬度設置爲其寬度並將其高度設置爲其高度。你期望改變什麼?您可能需要將寬度和高度更改爲已有的不同。
設置幾何體應在viewWillAppear:viewDidAppear方法中完成。同時檢查你的插座連接。
Btw只使用屬性,而不是Ivars。

+0

不,我只想設置一個新的位置,而不是它的寬度和高度!像CGPointMake。插座是正確的,因爲我正確設置了其他屬性,並且需要在執行時設置位置,而不是建議的事件:( – Jaume

+0

因此,當您將原點更改爲與{100,50}不同的內容時,它不會更改位置? – graver

+0

到底是什麼,沒有變化 – Jaume

2

不確定你的問題。你說的是位置,這是有道理的,他們停留在靜態設置爲x = 100和y = 50的同一位置。在尺寸方面,似乎您將尺寸設置爲物品的當前尺寸。換句話說,您將當前大小作爲要設置要調整大小的元素的大小傳入。

+0

元素不在需要的位置100,50,但必須在執行後,不要嘗試調整大小!也可以使用CGPointMake但結果相同 – Jaume

+0

我以前見過這種情況,它確實發生在我爲MacOS X和iOS編寫的程序中。出於好奇,如果您將[setNeedsLayout]和[LoadImage setNeedsLayout ]設置好框架後,或[superview setNeedsLayout] ??? – trumpetlicks