【问题标题】:How to secure first digits and display last 3 digits?如何保护第一个数字并显示最后 3 个数字?
【发布时间】:2026-02-06 17:55:01
【问题描述】:

我有文本字段,我在文本字段中输入的数据必须显示在带有一些安全文本的标签上。

例如,如果我在文本字段中输入了 123456789 数据,那么标签中的数据必须显示为 ******789。

如何实现?

【问题讨论】:

  • 我只知道 securetext 条目设置为 yes only 。但是对于整个文本将得到保护。所以我正在寻找这个,但没有找到任何能提供更好结果的东西。
  • 这与 UITextField 或其安全文本输入无关。您正在谈论更新标签的文本。只需在设置标签文本之前根据需要更新字符串。
  • @saikiran 输入值有限制吗?
  • 是的 15 @ParvendraSingh
  • @rmaddy 但该标签文本必须是我在文本字段中输入的文本,并且标签中的文本必须像我在问题中提到的示例一样加以保护

标签: objective-c uitextfield uilabel


【解决方案1】:

这是您查询的解决方案,

   -(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
           NSString * textFieldString = [textField.text stringByReplacingCharactersInRange:range withString:string];
           NSMutableString * str1 = [[NSMutableString alloc]initWithString:textFieldString];

       if(str1.length > 3){
         NSRange r = NSMakeRange(0, [str1 length] - 3);
         [str1 replaceCharactersInRange:r withString:[[NSString string] stringByPaddingToLength:r.length withString:@"*" startingAtIndex:0]];
         NSLog(@"test string---- > %@",str1);
       }
     }

【讨论】:

    最近更新 更多