簡體   English   中英

iOS 8-用戶名UITextField在成為密碼文本字段后的第一響應者時確保輸入的安全

[英]iOS 8 - username UITextField secures entry when becoming first responder AFTER the password text field

我在經典配置中遇到了一個問題:用戶名/密碼文本字段。 沒什么特別的,僅2個UITextFields,其中一個選中了“安全文本輸入”即可。

當我點擊用戶名文本字段時,這是正常的。 然后,我點擊密碼文本字段,文本被保護(大點)。 當我再次點擊用戶名文本字段時,兩個文本字段的文本都被保護了!

如果在再次點擊用戶名密碼之前在密碼文本字段之外點擊,則文本仍然是安全的。 但是,如果在那之后,我在用戶名文本字段之外點擊,然后再次在用戶名文本字段上點擊,則文本是不安全的。 另外,如果在安全的情況下更改了用戶名文本字段的文本,它將再次恢復正常。

在iOS8(不是iOS7)上發生錯誤。

任何的想法? 謝謝!

我的同事補充說,它奏效了

-(void)textFieldDidBeginEditing:(UITextField *)textField
{
    if (textField == self.usernameText)
    {
        self.usernameText.secureTextEntry = YES;
        self.usernameText.secureTextEntry = NO;
    }
}

僅當用戶名和密碼文本字段中包含SAME文本時,才會發生這種情況。 這是一個iOS8錯誤,但是由於在“現實世界”場景中這種情況極有可能永遠不會發生,所以還算不錯(盡管仍然很容易出錯)。 一旦用戶名不再與密碼匹配,它就會像在iOS7中那樣工作。

希望這對您有所幫助

usernameTextField.tag = 0; passwordTextField.tag = 1;

-(void)textFieldDidBeginEditing:(UITextField *)textField
{
    switch(textField.tag) {
        case 0:
        textField.secureTextEntry = NO;
        break;
        case 1:
        textField.secureTextEntry = YES;
        break;
        default:
        break;
    }
}

這也可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM