1

故事板场景是这样的:

UITableViewController带有UITableView自定义原型UITableViewCellAddInfoCell

UITextViewAddInfoCell.

要返回键盘,我使用将以下代码放入UIViewController类中并将其连接到UITextViewwith 选项DidEndOnExit

- (IBAction)textFieldReturn:(id)sender {
    [sender resignFirstResponder];
}

但是我现在找不到适合这个代码的地方,因为UITextViewAddInfoCell课堂上。

它无法与UITextView班级TableViewControllerAddInfoCell班级联系起来。

我还尝试为该类创建一个TextViewControllerUITextView并将textFieldReturn代码放在那里,但我仍然无法将它连接到情节提要中。

那么在这种情况下如何返回键盘有什么建议吗?

这是创建 `AddInfoCell 的地方:

- (AddInfoCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"AddInfoCell";

AddInfoCell *addInfoCell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];

if (addInfoCell == nil) {
    addInfoCell = [[AddInfoCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
}
return addInfoCell;

}
4

2 回答 2

2

使用UITextViewDelegate委托。

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {

    if([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        return NO;
    }

    return YES;
}

还要添加这个方法:

 -(BOOL)textViewShouldReturn:(UITextView *)textView {
   [textView resignFirstResponder];
   return YES;
  }
于 2012-09-19T16:39:03.690 回答
0

addInfoCell.cellTextView.delegate = self;

于 2012-09-19T17:35:17.913 回答