プログラムで高さ制約を更新する

タパスパル:

自動レイアウトは初めてです。xibファイルからすべてのプロジェクトを実行しましたが、プログラムでビューの高さを更新する必要があるという問題に直面しました。私は以下を試しましたが、現在は機能しています。

[[self view] addConstraint:[NSLayoutConstraint constraintWithItem:loginContainer attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0f constant:loginFrame.size.height]];

コンソールではそれはショーです

Unable to simultaneously satisfy constraints.
    Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the unwanted constraint or constraints and fix it. (Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints) 
(
    "<NSLayoutConstraint:0x78724530 V:[UIView:0x790cdfb0(170)]>",
    "<NSLayoutConstraint:0x787da210 V:[UIView:0x790cdfb0(400)]>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x78724530 V:[UIView:0x790cdfb0(170)]>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKit/UIView.h> may also be helpful.
Dave Paul:

新しい制約を追加する代わりに、既存の制約の定数を変更する必要があります。

IBOutletを使用して、Interface Builderで制約に接続します。

@property (nonatomic, weak) NSLayoutConstraint *heightConstraint;

次に、プログラムで設定する必要がある場合は、制約の定数プロパティを設定するだけです。

heightConstraint.constant = 100;

または

Interface Builderでnibにアクセスできない場合は、コードで制約を見つけます。

NSLayoutConstraint *heightConstraint;
for (NSLayoutConstraint *constraint in myView.constraints) {
    if (constraint.firstAttribute == NSLayoutAttributeHeight) {
        heightConstraint = constraint;
        break;
    }
}
heightConstraint.constant = 100;

そしてSwiftでは:

if let constraint = (myView.constraints.filter{$0.firstAttribute == .width}.first) {
            constraint.constant = 100.0
        }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

プログラムでUIViewの一定の高さ制約を更新する方法は?

分類Dev

iOS:UIViewの高さ制約をプログラムで変更する

分類Dev

UILabelのみの幅と高さおよび制約をプログラムで設定する方法

分類Dev

プログラムで制約を更新しますか?

分類Dev

Swift-プログラムで制約を更新します

分類Dev

プログラムで制約を変更すると、AndroidMotionLayoutの状態が更新されない

分類Dev

プログラムで作成されたボタンの制約をプログラムで使用する

分類Dev

制約レイアウトの高さをプログラムで変更しますか?

分類Dev

UIButtonにプログラムで追加された制約を変更する方法

分類Dev

ConstraintLayout:プログラムで制約を変更する

分類Dev

プログラムで迅速に制約を追加する

分類Dev

プログラムで制約を変更するSwift

分類Dev

プログラムでuibuttonの制約を取得する

分類Dev

プログラムでUIViewに制約を追加する

分類Dev

プログラムでUITableViewCell制約を作成する

分類Dev

プログラムで負の制約を追加する

分類Dev

プログラムで制約のIDを取得する

分類Dev

プログラムでUITextFieldに制約を追加する

分類Dev

プログラムでビューに制約を追加する

分類Dev

Swift-プログラムで制約を変更する

分類Dev

プログラムでAutoLayout更新制約を使用するtableviewcell

分類Dev

プログラムによるUIButtonへの1:1の幅:高さの制約

分類Dev

プログラムでさまざまな状況でビューをすばやく制約する方法は?

分類Dev

プログラムで制約を作成するときのエラー

分類Dev

自動レイアウト制約を使用して、プログラムで4つのUIViewをすべて同じ高さと幅で作成します

分類Dev

プログラムでLoginButtonの制約をすばやく設定する

分類Dev

UITextViewを使用してUIViewにプログラムで制約を追加する

分類Dev

PercentRelativeLayout、プログラムで高さを設定する方法

分類Dev

プログラムで高さ拘束を変更する

Related 関連記事

  1. 1

    プログラムでUIViewの一定の高さ制約を更新する方法は?

  2. 2

    iOS:UIViewの高さ制約をプログラムで変更する

  3. 3

    UILabelのみの幅と高さおよび制約をプログラムで設定する方法

  4. 4

    プログラムで制約を更新しますか?

  5. 5

    Swift-プログラムで制約を更新します

  6. 6

    プログラムで制約を変更すると、AndroidMotionLayoutの状態が更新されない

  7. 7

    プログラムで作成されたボタンの制約をプログラムで使用する

  8. 8

    制約レイアウトの高さをプログラムで変更しますか?

  9. 9

    UIButtonにプログラムで追加された制約を変更する方法

  10. 10

    ConstraintLayout:プログラムで制約を変更する

  11. 11

    プログラムで迅速に制約を追加する

  12. 12

    プログラムで制約を変更するSwift

  13. 13

    プログラムでuibuttonの制約を取得する

  14. 14

    プログラムでUIViewに制約を追加する

  15. 15

    プログラムでUITableViewCell制約を作成する

  16. 16

    プログラムで負の制約を追加する

  17. 17

    プログラムで制約のIDを取得する

  18. 18

    プログラムでUITextFieldに制約を追加する

  19. 19

    プログラムでビューに制約を追加する

  20. 20

    Swift-プログラムで制約を変更する

  21. 21

    プログラムでAutoLayout更新制約を使用するtableviewcell

  22. 22

    プログラムによるUIButtonへの1:1の幅:高さの制約

  23. 23

    プログラムでさまざまな状況でビューをすばやく制約する方法は?

  24. 24

    プログラムで制約を作成するときのエラー

  25. 25

    自動レイアウト制約を使用して、プログラムで4つのUIViewをすべて同じ高さと幅で作成します

  26. 26

    プログラムでLoginButtonの制約をすばやく設定する

  27. 27

    UITextViewを使用してUIViewにプログラムで制約を追加する

  28. 28

    PercentRelativeLayout、プログラムで高さを設定する方法

  29. 29

    プログラムで高さ拘束を変更する

ホットタグ

アーカイブ