2
我創建的代碼(沒有XIB或故事板這一個)視圖並在代碼中設置的限制,如:更改設定NSLayoutConstraint編程後
NSDictionary *bindings = NSDictionaryOfVariableBindings(_myView);
_myView = [[UIView alloc] init];
[self.view addSubview:_myView];
_myView.translatesAutoresizingMaskIntoConstraints = NO;
[self.view addConstraints: [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-0-[_myView]-0-|" options:0 metrics:nil views:bindings ] ];
[self.view addConstraints: [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-0-[_myView(25)]" options:0 metrics:nil views:bindings ] ];
在另一種方法後來我想改變_myView
的位置,並動態改變。
我的問題: 改變設置約束的最佳/正確方法是什麼? 我不知道如何改變X和Y領域。例如。我將這兩個值都設置爲0,並且我想將X和Y更改爲50.
好的謝謝。這是唯一合適的方式嗎?當我有例如10個UIViews,每個視圖有2個約束,我想要更改,然後我必須定義20個約束屬性... – Sebastian
您可以使用一個約束數組的屬性,並使用'-addConstraints:'添加和刪除等。您可以隱藏添加一個方法並調用它。無論哪種方式,自動佈局只是冗長的。 –