带有空格和固定数字位数的文本字段,如密码文本字段

时间:2017-12-21 15:44:07

标签: ios uitextfield

我想为密码输入输入固定数量的数字(即不超过6位数)。我该如何实现呢?不知道。请帮忙。我想实现如下图像。

enter image description here

1 个答案:

答案 0 :(得分:0)

谢谢@Hardik Shah。从那个链接我修改了代码并做出我想要的答案。如果任何人需要该解决方案,我会提供该解决方案。

1.您必须使用UITextView作为答案,因为当文本字段为空时,UITextField不支持删除按钮事件。

2.导入UITextViewDelegate并将textview委托分配给self。

 self.yourTextView.delegate = self;

3.从你的故事板中输出textview标签,或者从你需要的1个文本视图字段中编程一次(这里我需要6个textview)。

4.实现UITextViewDelegate方法(textView:shouldChangeTextInRange:replacementText :)并添加以下代码。 在这里,我给了我的方法。

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
   if ((textView.text.length == 1) && (text.length == 1))
   {
       NSInteger nextTag = textView.tag + 1;
       UIResponder* nextResponder = [textView.superview viewWithTag:nextTag];
       if (!nextResponder)
           return NO;

       if (nextResponder)
           [nextResponder becomeFirstResponder];

   }
   else if ((textView.text.length == 0) && (text.length == 0))
   {
       NSInteger nextTag = textView.tag - 1;
       UIResponder* nextResponder = [textView.superview viewWithTag:nextTag];
       if (!nextResponder)
           return NO;

       if (nextResponder)
           [nextResponder becomeFirstResponder];
    }

    return YES;
}