Autolayout help please


tridiak
 

I have an iPad app with ~60 labels and text fields.
Whenever I start to edit one of the text fields, I get this:

[LayoutConstraints] 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) 
(
    "<NSAutoresizingMaskLayoutConstraint:0x281d4b980 h=--& v=--& _UIButtonBarButton:0x102b7a5c0.height == 0   (active)>",
    "<NSLayoutConstraint:0x281d4efd0 _UIUCBKBSelectionBackground:0x102b7b340.bottom == _UIButtonBarButton:0x102b7a5c0.bottom - 6   (active)>",
    "<NSLayoutConstraint:0x281d4ef30 V:|-(6)-[_UIUCBKBSelectionBackground:0x102b7b340]   (active, names: '|':_UIButtonBarButton:0x102b7a5c0 )>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x281d4efd0 _UIUCBKBSelectionBackground:0x102b7b340.bottom == _UIButtonBarButton:0x102b7a5c0.bottom - 6   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-12-31 16:08:43.351368+1300 ArmourRules[12305:3137397] [LayoutConstraints] 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) 
(
    "<NSAutoresizingMaskLayoutConstraint:0x281d4b340 h=--& v=--& _UIButtonBarButton:0x102b6fba0.height == 0   (active)>",
    "<NSLayoutConstraint:0x281d4e990 V:|-(6)-[_UIUCBKBSelectionBackground:0x102b07aa0]   (active, names: '|':_UIButtonBarButton:0x102b6fba0 )>",
    "<NSLayoutConstraint:0x281d4ea30 _UIUCBKBSelectionBackground:0x102b07aa0.bottom == _UIButtonBarButton:0x102b6fba0.bottom - 6   (active)>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x281d4ea30 _UIUCBKBSelectionBackground:0x102b07aa0.bottom == _UIButtonBarButton:0x102b6fba0.bottom - 6   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-12-31 16:08:43.351892+1300 ArmourRules[12305:3137397] [LayoutConstraints] 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) 
(
    "<NSAutoresizingMaskLayoutConstraint:0x281d4b660 h=--& v=--& _UIButtonBarButton:0x102b72d40.height == 0   (active)>",
    "<NSLayoutConstraint:0x281d4ec60 V:|-(6)-[_UIUCBKBSelectionBackground:0x102b7a440]   (active, names: '|':_UIButtonBarButton:0x102b72d40 )>",
    "<NSLayoutConstraint:0x281d4ed00 _UIUCBKBSelectionBackground:0x102b7a440.bottom == _UIButtonBarButton:0x102b72d40.bottom - 6   (active)>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x281d4ed00 _UIUCBKBSelectionBackground:0x102b7a440.bottom == _UIButtonBarButton:0x102b72d40.bottom - 6   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-12-31 16:08:43.357168+1300 ArmourRules[12305:3137397] [LayoutConstraints] 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) 
(
    "<NSAutoresizingMaskLayoutConstraint:0x281d4f340 h=--& v=--& _UIButtonBarButton:0x102a7dc60.height == 0   (active)>",
    "<NSLayoutConstraint:0x281d303c0 _UIUCBKBSelectionBackground:0x102a7e8a0.bottom == _UIButtonBarButton:0x102a7dc60.bottom - 6   (active)>",
    "<NSLayoutConstraint:0x281d30320 V:|-(6)-[_UIUCBKBSelectionBackground:0x102a7e8a0]   (active, names: '|':_UIButtonBarButton:0x102a7dc60 )>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x281d303c0 _UIUCBKBSelectionBackground:0x102a7e8a0.bottom == _UIButtonBarButton:0x102a7dc60.bottom - 6   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-12-31 16:08:43.357858+1300 ArmourRules[12305:3137397] [LayoutConstraints] 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) 
(
    "<NSAutoresizingMaskLayoutConstraint:0x281d30820 h=--& v=--& _UIButtonBarButton:0x102b7ba30.height == 0   (active)>",
    "<NSLayoutConstraint:0x281d30000 V:|-(6)-[_UIUCBKBSelectionBackground:0x102b7d8c0]   (active, names: '|':_UIButtonBarButton:0x102b7ba30 )>",
    "<NSLayoutConstraint:0x281d300a0 _UIUCBKBSelectionBackground:0x102b7d8c0.bottom == _UIButtonBarButton:0x102b7ba30.bottom - 6   (active)>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x281d300a0 _UIUCBKBSelectionBackground:0x102b7d8c0.bottom == _UIButtonBarButton:0x102b7ba30.bottom - 6   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2020-12-31 16:08:43.358486+1300 ArmourRules[12305:3137397] [LayoutConstraints] 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) 
(
    "<NSAutoresizingMaskLayoutConstraint:0x281d4f660 h=--& v=--& _UIButtonBarButton:0x102a7ef00.height == 0   (active)>",
    "<NSLayoutConstraint:0x281d305f0 V:|-(6)-[_UIUCBKBSelectionBackground:0x102a7fd10]   (active, names: '|':_UIButtonBarButton:0x102a7ef00 )>",
    "<NSLayoutConstraint:0x281d30690 _UIUCBKBSelectionBackground:0x102a7fd10.bottom == _UIButtonBarButton:0x102a7ef00.bottom - 6   (active)>"
)

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x281d30690 _UIUCBKBSelectionBackground:0x102a7fd10.bottom == _UIButtonBarButton:0x102a7ef00.bottom - 6   (active)>

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

The app has no top or bottom bar (single page app option upon project creation).
I have manually tried to set & clear translatesAutoresizingMaskIntoConstraints . No change.

I have only one IBAction set for now.
Because of this mess the IBAction is not called. IBAction presence makes no difference.

I am not manually creating 100+ constraints for all these controls.
'Adding Missing Constraints' does not help. In one case it creates errors.

Is there some obscure setting that needs to be changed?

Years ago I could create an interface like this and none of this autolayout crap would happen.
Note this app is for personal use, it is not intended for the app store.

Xcode Version 12.2 (12B45b).
OS 10.15.7 (19H114).
iPad OS 14.2.


Thanks for any help
Mark

Join xcode@apple-dev.groups.io to automatically receive all group messages.