2014-10-01 68 views

回答

2

嘗試:(viewDidAppearUIInputViewController子類的方法)

- (void)viewDidAppear { 
    [super viewDidAppear]; 

    CGFloat _expandedHeight = 250; 
    NSLayoutConstraint *_heightConstraint = [NSLayoutConstraint constraintWithItem:self.view attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant: _expandedHeight]; 
    [self.view addConstraint: _heightConstraint]; 
} 

警告:寫在viewDidAppear:方法

這是行不通的。日誌:

2014-10-01 17:10:38.532 Coloured[7232:308451] 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:0x79829970 V:[UIInputView:0x79b2f660(250)]>", 
    "<NSLayoutConstraint:0x79824ea0 'UIView-Encapsulated-Layout-Height' V:[UIInputView:0x79b2f660(216)]>" 
) 

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x79829970 V:[UIInputView:0x79b2f660(250)]> 

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. 
+1

嘗試不工作。請檢查編輯。 – 2014-10-01 11:52:33

+0

確保你在'-viewDidAppear:'中試過了。不應該編輯我的帖子來顯示日誌(應該註釋而不是) – VietHung 2014-10-02 04:01:03

+0

謝謝你!它正在工作 – Jamil 2017-07-05 15:31:20