2011-07-04 57 views
1

我正在Mac OS上開發一種輸入法。現在我有一個問題。 如果當前輸入的文本字段是密碼,我需要將輸入模式切換爲英文。但我不知道如何做檢查。我怎樣才能知道當前輸入字段是密碼字段?在可可,如何檢查一個文本字段是密碼

回答

0

NSSecureTextFieldCells處理文本輸入與普通文本字段不同,默認情況下只設置爲允許羅馬字符。當用戶將該字段放在焦點上時,應該從鍵盤輸入選項中禁用IME和其他格式,因此這不應該成爲問題。

+0

謝謝。但問題是文本字段不僅允許輸入羅馬字符,例如MacOS的登錄窗口。我想知道一些方法來檢查當前編輯字段是否爲密碼。 – gang

2

正如提到的那樣,您不需要做任何事情,因爲NSSecureTextFieldCells應該只允許使用羅馬鍵盤。但是,Mac OS X 10.6有一個錯誤,如果您的輸入法的Info.plist文件不包含TISIntendedLanguage設置,則安全文本字段無法告訴您的輸入法不是羅馬輸入源。

您需要做的是將以下行添加到Info.plist文件中。我以繁體中文爲例,請將'zh-Hant'更改爲您的語言設置。

<key>TISIntendedLanguage</key> 
<string>zh-Hant</string> 
0

追加下面內容到輸入法應用程序的Info.plist,然後輸入法,可以在密碼文本字段中使用:

<key>tsInputMethodCharacterRepertoireKey</key> 
<array> 
    <string>Latn</string> 
</array> 
相關問題