2013-01-16 131 views
0

我試圖改變我的UIButton在界面生成器中的位置和大小。我很難過。動態重置用戶界面按鈕

我想這個代碼在viewDidAppear結束:

[_smartphoneButton setFrame:CGRectMake(20, 20, 100, 50)]; 

沒有什麼變化。但我知道_smartphoneButton是有效的,因爲_smartphoneButton.hidden = YES;的作品,以及更改UIButton圖像。

並提出建議?

PS,所有這些工作之一:

_smartphoneButton.frame = CGRectMake(20, 20, 100, 50); 

_smartphoneButton.center = CGPointMake(10.0f, 10.0f); 

在此先感謝!

+1

因爲隱藏的賦值,你當然不會「知道它是有效的」。在viewDidLoad中添加一個斷點,然後對那個東西進行處理。 – CodaFi

+0

「中心」方法開始工作。也沒有改變一件事。嗯。 –

+1

你有沒有嘗試清理你的構建和構建文件夾? –

回答

0

同意CodaFi,放一個斷點看_smartphoneButton的價值。
但即使viewWillAppear將工作,我會建議將您的代碼移動到viewDidLoad由於以下原因。
viewWillAppear可以在ViewController的實時中調用幾次,並且你將會修改你的按鈕的位置而無需任何操作。

+0

這會如何讓它更好? ViewDidA至少會出現一個視圖(ergo,一個重繪)。此外,UIKit的渲染機制不僅僅是在框架設置完成後不重繪按鈕,它們比這更聰明。 – CodaFi

+0

@CodaFi你是對的,剛剛測試過,修改正在發生,我一直認爲蘋果是遵循他們的命名慣例。哪個「做」通常意味着你接電話後。 –