2012-11-09 31 views
3

在iOS應用程序中使用UITextField時,我可以將安全文本輸入設置爲YES,該選項將遮蔽除字段中鍵入的最後一個字符以外的所有字符。不過,我也可以同時啓用自動更正。UITextField的Secure Text Entry和Autocorrection之間的交互是什麼?

有沒有人知道在這種情況下會發生什麼?如果我的密碼是「香蕉」,並且我開始在字段中輸入密碼,那麼如果文本也將被自動更正,則對文本進行遮擋無關緊要。

+2

雖然這是一個有趣的思想實驗 - 不應該明確禁用這個反正。隨着大寫等.. –

+0

我會如果我寫代碼 - 我不是。我正在檢查別人的代碼,如果這不是問題,我不想爲他們工作。 – Daniel

回答

1

正如@Michael Kernahan所說,這是一個有趣的思想實驗。我以前從來沒有想過,但只是爲了確保我的預感,該領域不會 autocorrect保持真實,我創建了一個小的Xcode項目來測試這個概念。

在IB中創建(確定是粗略的)接口之後,我使用默認的omw自動更正來將該字段作爲控件進行測試。如果沒有在該字段中專門啓用自動更正,則會發生自動更正。

Autocorrect works!

我通過調用

[secureTextField setSecureTextEntry:YES]; 

並再次運行測試設置字段是安全的。測試失敗並且該字段未自動更正。

Autocorrect doesn't work :(

最後,當你在你的問題描述,我設置了安全的文本字段的autoCorrectionTypeUITextAutocorrectionTypeYes和測試再次失敗。

Autocorrect doesn't work yet again :(


爲了更簡單地回答你的問題,根據這些測試設置UITextField採取安全輸入禁止場的autocorrective屬性,無論它們是否被明確允許或沒有(如預計和應該是)。

相關問題