是否可以在两个不同的位置设置textFieldShouldReturn
和shouldChangeCharactersInRange
。
目前我在一个单独的文件中使用shouldChangeCharactersInRange
,因为我的许多文件都使用它 - 它的功能只有数字才会显示在文本字段中。
但是我希望每个单独的文件都有自己唯一的textFieldShouldReturn
,因为textfield id是唯一的。任何建议的方法,因为我知道每个文本字段只能容纳一个代表?
答案 0 :(得分:1)
由于两种方法都来自同一个协议,因此您必须在同一个文件中使用这两种方法。但是,可以编写shouldChangeCharactersInRange:
的实现来调用一些执行实际工作的常用方法。
例如:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
return [someHelper textField:textField shouldChangeCharactersInRange:range replacementString:string];
}
其中someHelper
是实现共享实现的类。
答案 1 :(得分:0)
我认为你可以将其子类化为同一个shouldChangeCharactersInRange
,但是如果你现在想坚持使用你的解决方案,我想你可以给textfield一个标签,然后检查textFieldShouldReturn
中的标签在该文件中并给他们自己的功能