2014-04-18 55 views
0

用於Secure Text Fields的點iOS7.1比以前的要大,而且非常難看。我可以使用自定義圖標代替安全UITextField中的點嗎?

我可以用different icon代替這些標準點嗎?如果是這樣,我該怎麼做?

+0

如果你問,可以在'缺省點secureTextEntry'另一個字符替換,那麼它是不可能的。你可以做的最好的是創建一個複雜的代碼來保存一個字符串來存儲鍵入的字符,或者在'textField'中使用'addSubview'(因爲它繼承自'UIView')。 – n00bProgrammer

+0

是的!您可以使用unicode字符將其顯示給用戶,並使用單獨的'NSMutableString'來包含確切的密碼。 – TheTiger

回答

0

你可以試試下面的代碼:

/* don't ever use this PROOF OF CONCEPT CODE for production use */ 
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 
{ 
if (self.backing == nil) self.backing = @""; 
static BOOL pasting = false; 

if (!pasting) 
{  
    self.backing = [self.backing stringByReplacingCharactersInRange:range withString:string]; 
    NSLog(@"backing: %@",self.backing); 
    if ([string length] == 0) return YES; // early bail out when just deleting chars 

    NSString *sec = @""; 
    for (int i=0;i<[string length]; i++) sec = [sec stringByAppendingFormat:@"■"]; 

    pasting = true; 
    [[UIPasteboard generalPasteboard] setString:sec]; 
    [textField paste:self]; 

    return NO; 
} else { 
    pasting = false; 
    return YES; 
}  
} 
+0

什麼是self.backing? – Kevin

+0

@iDeveloper您剛在此處粘貼了與鏈接代碼相同的代碼。相反,您應該將鏈接粘貼爲評論。 – TheTiger

+0

它現在確實工作,謝謝。 – Kevin

相關問題