textFieldで「•••••••」を使用してパスワードを非表示にします


132

私のアプリには、ユーザーがパスワードを入力する必要があるtextFieldがあり、ユーザーが文字を入力したときにそれを「•」に変更したいのですが、どうすればよいですか?

回答:


302

これはXcodeで直接実現できます。

ここに画像の説明を入力してください

最後のチェックボックスsecureです。必ずチェックしてください。

または、コードを使用してそれを行うことができます:

入力中のテキストをテキストオブジェクトが非表示にするかどうかを識別します。

宣言

optional var secureTextEntry: Bool { get set }

討論

このプロパティはfalseデフォルトでに設定されています。このプロパティをに設定trueすると、入力中のテキストを非表示にするパスワードスタイルのテキストオブジェクトが作成されます。

例:

texfield.secureTextEntry = true

1
新しいXCode8以降では、ランタイム属性列にsecureTextEntryを追加する必要があります
Balagurubaran


13

XCode 6.3.1では、aを使用するNSTextField場合、のチェックボックスは表示されませんsecure

使用NSTextFieldする代わりにNSSecureTextField

https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSSecureTextField_Class/index.html

安全なテキストフィールドのクラスができたので、これはSwift / Objective-Cの変更だと思います。上記のリンクにはAvailable in OS X v10.0 and later. 、Swift / Objective-C、XCode、またはOS Xのいつ/なぜ/どのバージョンについて詳しく知っている場合、これは


MacOSの開発のために、これは新しい正しい答えである
ジョセフDeCarlo

12

Swift 4およびXcodeバージョン9以降

Interface Builderの「Secure Text Entry」で設定できます

ストーリーボードのスクリーンショットで確認されたセキュアなテキスト入力


こんにちは、セキュリティで保護されたテキストフィールドが黄色のテキスト "Strong Password"エラーで強調表示されることがあります。解決策はありますか?
サラバナン

1

SwiftUIについては、

TextField ("Email", text: $email)
    .textFieldStyle(RoundedBorderTextFieldStyle()).padding()
SecureField ("Password", text: $password)
    .textFieldStyle(RoundedBorderTextFieldStyle()).padding()

0

これは、属性インスペクターのテキストフィールドのプロパティを使用して行うことができます

ストーリーボードからあなたのテキストフィールドをタップし、属性インスペクタに行き、そしてちょうど「セキュアテキスト入力」のチェックボックスにチェックを入れSSは同じ達成するためのグラフィカルな概要のために追加されます


-1

プログラム的に(Swift 4および5)

self.passwordTextField.isSecureTextEntry = true

1
Swift 3以降では、構文が変更されました。上記の回答を参照してください。
mojtaba al moussawi

私の答えはSwift 4
Arunabh Dasです。

2
これはSwift 4でよろしいですか?textFieldには、secureという名前のプロパティやメソッドはありません... swift 4には、self.passwordTextField.isSecureTextEntry = trueを使用します
mojtaba al moussawi '26 / 08/18
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.