2010-06-08 3 views

Répondre

1

Vous pouvez utiliser une catégorie:

@interface UILabel (SecureText) 
@property (nonatomic, retain) NSString *secureText; 
@end 
@implementation UILabel (SecureText) 
- (void)setSecureText:(NSString *)newText { 
    NSMutableString *securedMutableText = [NSMutableString new]; 
    for (int i = 0; i < [newText length]; i++) { 
     [securedMutableText appendString:@"*"]; 
    } 
    self.text = securedMutableText; 
} 
- (NSString *)secureText { 
    return self.text; 
} 
@end 

puis l'utiliser comme ceci:

[cell.textLabel setSecureText:@"passwordNotShown"]; 
+0

idée très intelligente. –

+0

Merci! Cela fonctionne très bien :-) Y at-il un moyen d'utiliser l'iPhone « balles » au lieu de « * »? – jgray

+0

Je crois que la balle est un personnage régulier. Vous devez juste connaître sa valeur. Essayez de chercher sur Internet. J'ai trouvé ceci: 'http: // www.fileformat.info/info/unicode/char/2022/index.htm'. –

0

UILabel ne dispose pas d'une propriété sécurisée, vous devrez créer une cellule personnalisée avec un UITextField non modifiable avec l'ensemble de la propriété sécurisée.

0

UILabel n'a pas « entrée sécurisée » comment sur la configuration chaîne masquée sous forme de texte de l'étiquette?

NSString *secretText = @"sekert"; 
NSMutableString *masked = [[NSMutableString alloc] init]; 
for (int i=0; i < [secretText count] ; i++) 
    [masked appendString:@"*"]; // 

cell.textLabel.text = masked; 
[masked release]; 
Questions connexes