Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa 验证NSTEXT字段中的十进制最大/最小值_Cocoa_Nstextfield_Validating - Fatal编程技术网

Cocoa 验证NSTEXT字段中的十进制最大/最小值

Cocoa 验证NSTEXT字段中的十进制最大/最小值,cocoa,nstextfield,validating,Cocoa,Nstextfield,Validating,首先,我必须在没有IB和KVO等高级Objective-C技术的情况下完成这项工作 我的问题来自一个简单的事实,即我找不到一种方法来获取文本字段的整个新字符串值 我尝试使用委托函数: - (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString 但这并没有给我提供验证所需的替换字

首先,我必须在没有IB和KVO等高级Objective-C技术的情况下完成这项工作

我的问题来自一个简单的事实,即我找不到一种方法来获取文本字段的整个新字符串值

我尝试使用委托函数:

- (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
但这并没有给我提供验证所需的替换字符串,而不是完整字符串。我以后可以使用文本

我发现

- (void)textDidChange:(NSNotification *)aNotification 
- (void)controlTextDidChange:(NSNotification *)aNotification
但是当我接到这个电话时已经很晚了,最后一个文本字段的内容已经不见了。那么,处理这个问题的最佳方法是什么

是的,我确实读过,但它没有给我解决问题的线索

我只需要一个简单的“-(BOOL)acceptNewValue(NSString)”测试函数。为什么可可豆的一切如此复杂,让人感觉像是MFC

我尝试使用委托函数:

- (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
你的意思是实现这个方法。使用它意味着调用它,这是NSTextView的工作,它是一种Objective-C方法,而不是C函数

但这并没有给我提供验证所需的替换字符串,而不是完整字符串

除此之外:您可以向文本视图请求该字符串的可变副本,然后验证生成的字符串。如果更改将导致无效输入,则返回
NO

我尝试使用委托函数:

- (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
你的意思是实现这个方法。使用它意味着调用它,这是NSTextView的工作,它是一种Objective-C方法,而不是C函数

但这并没有给我提供验证所需的替换字符串,而不是完整字符串


除此之外:您可以向文本视图请求该字符串的可变副本,然后验证生成的字符串。如果更改将导致无效输入,则返回
NO

谢谢,这样就解决了问题。但是我买了一个新的谢谢这解决了问题。但是我有一个新的