gpt4 book ai didi

ios - 实现 textViewDidChange :

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

所以,我有一个带有 Objective-C 的非常简单的列表项目,其中列表中的每个项目都应该有一个标题和描述。单击其中一项时,会显示该项目的详细 View 。导航栏上的标题是项目的标题, View 的其余部分是项目的描述。通过单击标题,用户应该能够更改它,并且通过单击描述,他们也应该能够更改它。

在更改标题之前一切都很顺利,我已经成功做到了。问题是当涉及到改变描述时。我尝试使用委托(delegate),但我想我一定使用了错误的命令,因为它根本不起作用。我尝试在网上寻找它,但我找到的只是 TextField 的解决方案,这对我没有真正的帮助,因为我想显示可能的多行描述,并且我不想每次都从 TextView 更改为 TextField用户想要编辑它的时间。因此,如果有人能帮助我解决这个问题,那就太好了。

这是我尝试使用委托(delegate)的代码。

viewDidLoad上我有这个:

[self.descriptionLabel setDelegate:self.descriptionLabel.delegate];

然后我有这个,它应该在文本更改后执行操作:

- (void)textViewDidChange:(UITextView *)textView {
NSLog(@"Hello World");
}

P.S.:我也在寻找一种让“完成”按钮显示在键盘上的方法,因为到目前为止,一旦键盘被调出,再次按下它的唯一方法就是返回到 TableView ,然后再次进入详细 View 。我已经尝试过一些事情,但我承认我的研究还不够彻底。因此,作为旁注,如果您也能证明这一点,那就太好了,否则,我真正想要的一件事就是上面的问题。谢谢你的帮助! :]

最佳答案

根据评论总结答案。

行:

[self.descriptionLabel setDelegate:self.descriptionLabel.delegate];

需要:

self.descriptionLabel.delegate = self;

您希望 View Controller 成为委托(delegate),因为 View Controller 实现了 TextView 委托(delegate)方法。

您还需要指示 View Controller 符合 UITextViewDelegate 协议(protocol)。

在您的 .m 文件中,添加以下内容:

@interface DetailViewController () <UITextViewDelegate>

@end

关于ios - 实现 textViewDidChange :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25210236/

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