gpt4 book ai didi

iphone - tableHeaderView 中的 UITextView 找不到委托(delegate)

转载 作者:行者123 更新时间:2023-11-29 11:22:27 25 4
gpt4 key购买 nike

我在 nib 文件中定义了一个 UITableView tableHeaderView。 tableHeaderView 包含一个 UITextView。 UITextView 的委托(delegate)设置为 UITableViewController 并且 UITableViewController 支持 UITextViewDelegate 协议(protocol)。 UITableViewController 正在 tableHeaderView 中设置各种属性,包括 UITextView 的文本,并且一切正常。但是 UITableViewController 中的 textFieldShouldReturn:(UITextField *)textField 永远不会被调用,而且我在点击 UITextView 后无法关闭键盘。

我已经尝试了我可以在文档和各种帖子中找到的所有建议,但没有成功。我发现的所有示例都没有 tableHeaderView 中的 UITextView 这种特定情况。

我有什么特别需要做的吗?有人成功过吗?

我试过在代码中设置 UITextView 委托(delegate),但没有成功。

@class Decision;

@interface DecisionDetailViewController : UITableViewController <UINavigationControllerDelegate, UITextViewDelegate> {

Decision *decision;

UIView *tableHeaderView;
UITextView *nameTextField;
}

@property (nonatomic, retain) Decision *decision;
@property (nonatomic, retain) IBOutlet UIView *tableHeaderView;
@property (nonatomic, retain) IBOutlet UITextView *nameTextField;

@end


@implementation DecisionDetailViewController

@synthesize decision;
@synthesize tableHeaderView;
@synthesize nameTextField;

- (void)viewDidLoad {
self.navigationItem.rightBarButtonItem = self.editButtonItem;

if (tableHeaderView == nil) {
[[NSBundle mainBundle] loadNibNamed:@"DecisionDetailHeader" owner:self options:nil];
self.tableView.tableHeaderView = tableHeaderView;
}
}

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

最佳答案

textFieldShouldReturn 是 UITextFieldDelegate 而不是 UITextViewDelegate 的一种方法。那可能是你的问题。

关于iphone - tableHeaderView 中的 UITextView 找不到委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6287490/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com