首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSInvalidArgumentException reason keyboardWasHidden?

NSInvalidArgumentException reason keyboardWasHidden?
EN

Stack Overflow用户
提问于 2010-11-30 22:45:29
回答 1查看 413关注 0票数 0

这是怎么回事?

代码语言:javascript
复制
- (IBAction)textFieldDidEndEditing:(id)sender
{
    if(!_isEditing )
        return;
    UITextField* textField = (UITextField*)sender;
    NSString* newValue = [textField text];
    UITableViewCell* cell = [self GetCellFromTextField:textField];
    NSString* fieldName =[(UILabel*)[self GetLabelHeaderFromCell:cell] text];   
    NSIndexPath* indexPath= [self GetIndexPathForCell:cell];
    [PersonalSection SetFieldValue:newValue AndFieldName:fieldName UsingIndexPath:indexPath AndPersonalInformation:self.personalInfoInUse];

    _trackingEditTextField=nil;
    [fieldName release];
    _isEditing = FALSE;

}

- (IBAction)textFieldDidBeginEditing:(id)sender
{
    _trackingEditTextField=(UITextField*)sender;
}

-(IBAction)textFieldDidChange
{
    _isEditing=YES;
    self.navigationItem.rightBarButtonItem = saveButton;
    self.navigationItem.leftBarButtonItem = cancelButton;
}

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    [_trackingEditTextField resignFirstResponder];
    return NO;
}

-(void)KeyboardDidShow:(NSNotification*) notification
{
    if ( keyboardShown )
        return;

    CGRect frame = tableView.frame;
    frame.size.height -= 165;
    tableView.frame = frame;
    [tableView scrollToRowAtIndexPath:[self GetIndexPathForTextView:_trackingEditTextField] atScrollPosition:0 animated:YES];
    keyboardShown = YES;
}

- (void)keyboardWasHidden:(NSNotification *)notification {
    if ( keyboardShown ) {

        CGRect frame = tableView.frame;
        frame.size.height += 165;
        tableView.frame = frame;
        keyboardShown = NO;

    }
}

当尝试退出first responder时(即,当我单击键盘上的'done‘按钮时),但键盘仍在显示,并且尚未输入UIKeyboardWillHideNotification的接收方keyboardWasHidden,则会触发异常

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-01 22:48:26

我通过以下代码行监听通知

代码语言:javascript
复制
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardWasHidden::) name:UIKeyboardWillHideNotification object:nil];

所以这是一个小错误,选择器"keyboardWasHidden::“应该是"keyboardWasHidden:”

希望它对任何人都有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4314940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档