输入期间特定字符的文本字段动画

时间:2011-03-22 23:17:11

标签: iphone animation text sdk uitextfield

我有一个文本字段,它使用数字键盘输入,我想这样做,当用户键入数字时,文本字段会自动在第一个数字后面插入一个'(撇号),任何其他数字都会跟随撇号。但为了使这一点显而易见,我希望在文本字段中休息之前让撇号“弹出”变色。就像键盘字母被击中时的动作一样 - 它们会弹出一秒钟。

对我来说,有几件事要做,我没有在网上找到任何帮助:

  1. 输入一位数后会收到通知(可输入多个数字,但动画会发生,撇号后会显示其他数字)。

  2. 将撇号添加到文本字段中。

  3. 动画插入撇号,同时允许文本字段不断接收输入。

  4. 对图书馆或代码或建议的任何指示都会非常感激。非常感谢。我有预感我应该使用coco2d,但不知道如何开始。

1 个答案:

答案 0 :(得分:0)

我想出了一个我认为如果有人有兴趣我会分享的工作。要监控输入,您可以使用:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

当用户触摸键盘时,但在处理字符或数字并将其放入屏幕之前调用。唯一的问题是在空文本字段上,如果用户点击退格,则不会调用此方法(即使不为null)。基本上是因为没有对要处理空字符串的空文本字段进行更改。

您还可以使用:UITextFieldTextDidChangeNotification,但它以相同的方式调用,并且不提供任何参数可供使用。

对于2:我最终为这些制作标签并将它们放在我想要的文本字段上,并根据需要使用它们的属性。它有点乱,所以我实际上将文本字段分成2并使用上面的方法跳入其中。似乎工作得很好,但处理退格问题仍然没有解决(例如,当退回文本时如何移回第一个文本字段)。我正在考虑在键盘的那一部分上覆盖透明按钮。虽然看起来很混乱。我会很感激任何更清洁的想法。

所以,最终没有做任何动画,这本来是一个很光滑的。希望这会有所帮助。