gpt4 book ai didi

objective-c - 未调用 UITextView shouldChangeTextInRange 委托(delegate)

转载 作者:太空狗 更新时间:2023-10-30 03:47:22 24 4
gpt4 key购买 nike

我正在使用这段代码来设置我 View 中的 uitextview 的参数。

_textview=[[UITextView alloc]init];
[_textview setUserInteractionEnabled:FALSE];
_textview.text=@"Write your message";
_textview.textColor=[UIColor lightGrayColor];
_textview.layer.cornerRadius=6;
_textview.contentInset = UIEdgeInsetsZero;
_textview.delegate=self;

我在 .h 中有这段代码

IBOutlet UITextView *_textview;
@property(nonatomic,retain) IBOutlet UITextView *_textview;

我已经使用接口(interface)将 outlet 连接到 uitextview。

接下来会发生什么:

- (void)textViewDidChange:(UITextView *)inTextView

调用了上面的委托(delegate),但不调用下面的委托(delegate):

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementString:(NSString *)string 

为什么会这样?我做错了什么吗?

感谢任何帮助...

最佳答案

除了删除 _textview = [[UITextView alloc]init];以免覆盖您的 Nib 加载 TextView 。

<UITextViewDelegate>方法是:

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

正确的方法签名是:

textView:shouldChangeTextInRange:replacementText:

不是:

textView:shouldChangeTextInRange:replacementString:

关于objective-c - 未调用 UITextView shouldChangeTextInRange 委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9253957/

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