【发布时间】:2017-10-04 13:28:50
【问题描述】:
当从一个文本域跳转到另一个文本域时,得到这个:
translatesAutoresizingMaskIntoConstraints)
(
"<NSAutoresizingMaskLayoutConstraint:0x6040002806e0 UIKeyboardAssistantBar:0x7f986d40d020.height == 0>",
"<NSLayoutConstraint:0x60400008ece0 _UIButtonBarStackView:0x7f986d4041c0.top == UIKeyboardAssistantBar:0x7f986d40d020.top>",
"<NSLayoutConstraint:0x60400008ed30 UIKeyboardAssistantBar:0x7f986d40d020.bottom == _UIButtonBarStackView:0x7f986d4041c0.bottom>",
"<NSLayoutConstraint:0x60400009f220 _UIButtonBarButton:0x7f986d438480.height == UILayoutGuide:0x6040005b5ee0.height>",
"<NSLayoutConstraint:0x60400008e1a0 _UIButtonBarStackView:0x7f986d4041c0.bottom == UILayoutGuide:0x6040005b5ee0.bottom + 9>",
"<NSLayoutConstraint:0x60400008e100 UILayoutGuide:0x6040005b5ee0.top == _UIButtonBarStackView:0x7f986d4041c0.top + 10>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x60400008e1a0 _UIButtonBarStackView:0x7f986d4041c0.bottom == UILayoutGuide:0x6040005b5ee0.bottom + 9>
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.
在模拟器中测试,不要上设备。 shortcuts bar over keyboard1 有问题吗?
我的超级简单代码触发了打破约束:
-(BOOL)textFieldShouldReturn:(UITextField*)textField
{
[textField resignFirstResponder];
if (textField.tag > 0) {
UITextField *nextTextField = [self.view viewWithTag:textField.tag+1];
[nextTextField becomeFirstResponder];
}
return YES;
}
【问题讨论】:
-
我在模拟器中看到了同样的问题。您是否有幸找到解决此问题的方法?
-
我也看到了这个
-
对于任何与 UITextField 有类似问题的人,您应该检查您是否选择了内容类型,如果没有添加一个并检查问题是否仍然存在,这解决了我的问题。
标签: ios objective-c uitextfield nslayoutconstraint becomefirstresponder