2010-08-27 39 views
0

我想在iPhone中使用自動調整大小蒙版來調整橫向和縱向模式下的視圖。問題是,當我從Interface Builder應用寬度彈簧時,按鈕會按比例改變其大小。但是,當我通過代碼應用同一個彈簧即使用Interface Builder和代碼自動調整大小?

[self.view setAutoresizesSubviews:YES]; 
[testButton setAutoresizingMask:UIViewAutoresizingNone]; 
[testButton setAutoresizingMask:UIViewAutoresizingFlexibleWidth]; 

該按鈕不顯示相同的行爲。

自動調整大小從界面生成器施加在按鈕: 原始按鈕尺寸:120的寬度和37高度 橫向模式按鈕:改變大小成比例地

自動調整大小施加在按鈕從代碼:
原始按鈕大小 :120寬度和37高度
風景模式按鈕:通過在縱向和橫向模式下保持相同的左右邊距來更改尺寸。

從代碼應用的掩碼似乎不能正常工作,因爲從代碼創建的按鈕的大小變得更大。

我的看法很複雜,這就是爲什麼我不想在View上設置每個子視圖的框架。

任何人都有同樣的問題!

回答

0

檢查2件事。 1.連接IBOutlet 2.同時檢查您是否創建了您創建的IBOutlet視圖的@property。

希望能解決這個問題。

1

thnx爲迴應的人,順便說明我已經解決了我的問題。與界面構建器的鏈接沒有任何關係。實際上,在沒有界面構建器的情況下創建視圖時,如果您希望子視圖自動調整大小,您必須使用按位OR連接器將彈簧和支柱設置在一條直線上。我用來重新調整我的觀點的代碼是:

[appLogo setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleLeftMargin];