我正在苦苦掙扎着Autolayout(在新應用中首次使用它)。自動佈局問題
以下情況:
- 故事板
- iPad的
- 自動佈局啓用
在一個酥料餅的,我需要重新佈局8個按鍵編程根據用戶選擇。此功能正常工作,直到按鈕必須旋轉180°(可上下顛倒,這是一項應用功能)。
只要我添加旋轉的代碼,重新佈局不再工作。 我不明白爲什麼我可以改變按鈕的位置(如情況2),但是,當旋轉它不工作了。
案例1:
BUTTON 0 |按鈕1 | BUTTON 2 | BUTTON 3
BUTTON 4 | BUTTON 5 |按鈕6 | BUTTON 7
案例2:
按鈕7 |按鈕6 | BUTTON 5 | BUTTON 4
BUTTON 3 | BUTTON 2 |按鈕1 |按鈕1
(所有按鈕旋轉180°,即翻轉顛倒)
一旦AutoLayout關閉,它就像一個魅力。 問題是,只要我關掉AutoLayout,應用程序的其餘部分就完全搞砸了。
如果有人能幫助我理解這個問題,那將會很棒。
的代碼在viewDidAppear
for (UIButton *button in self.allButtons) {
if (button.tag == i) {
button.transform = CGAffineTransformMakeRotation(M_PI);
button.frame = CGRectMake((300 - (100 * currentButtonPosition)) + offsetWidthButton, offsetHeightButton, 100, 100);
NSLog(@"Button Tag Nr: %d\nFrame:\nX=%f\nY=%f\nW=%f\nH=%f",button.tag, button.frame.origin.x, button.frame.origin.y, button.frame.size.width, button.frame.size.height);
}
}
的幀座標的按鈕都在NSLog的輸出正確。我想不知怎麼的button.transform擰了.frame = CGRectMake部分,但爲什麼我不明白,並期待您的幫助或指導,繼續研究神祕的autoLayout。
希望的解釋是可以理解的:-)
感謝,並有一個愉快的一天 羅尼
如果你不使用'viewDidAppear'中的任何代碼會發生什麼?我不明白你爲什麼需要它。 – trojanfoe
根據用戶在設置中選擇的內容,例如,只有5個按鈕和不同的順序。這就是爲什麼我需要以編程方式對它們進行重新排序。例如,它將是按鈕1 |按鈕3 | BUTTON 5 |按鈕6 | BUTTON 7 –