Sembunyikan kata sandi dengan “•••••••” di textField

132

Di aplikasi saya ada textField di mana pengguna harus memasukkan kata sandi dan saya ingin ketika dia memasukkan karakter itu mengubahnya menjadi '•' bagaimana saya bisa melakukan ini?

Clément Bisaillon
sumber

Jawaban:

302

Anda dapat mencapai ini secara langsung di Xcode:

masukkan deskripsi gambar di sini

Kotak centang terakhir, pastikan securedicentang.

Atau Anda dapat melakukannya menggunakan kode:

Mengidentifikasi apakah objek teks harus menyembunyikan teks yang dimasukkan.

Pernyataan

optional var secureTextEntry: Bool { get set }

Diskusi

Properti ini diatur falsesecara default. Mengatur properti ini untuk truemembuat objek teks gaya kata sandi, yang menyembunyikan teks yang dimasukkan.

contoh:

texfield.secureTextEntry = true
meda
sumber
1
Di New XCode8 dan di atasnya kita harus menambahkan secureTextEntry di kolom atribut runtime
Balagurubaran
55

di Swift 3.0 atau Lebih Baru

passwordTextField.isSecureTextEntry = true
Kishu mewara
sumber
13

Dalam XCode 6.3.1, jika Anda menggunakan, NSTextFieldAnda tidak akan melihat kotak centang untuk secure.

Alih-alih menggunakan NSTextFieldgunakanNSSecureTextField

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

Saya menduga ini adalah perubahan Swift / Objective-C karena sekarang ada kelas untuk bidang teks aman. Di tautan di atas dikatakan Available in OS X v10.0 and later. Jika Anda tahu lebih banyak tentang kapan / mengapa / apa versi Swift / Objective-C, XCode, atau OS X ini

pengguna3731622
sumber
Untuk pengembangan MacOS, ini adalah jawaban yang benar dan baru
Joseph DeCarlo
12

Swift 4 dan Xcode Versi 9+

Dapat diatur melalui "Entri Teks Aman" melalui Interface Builder

Entri Teks Aman diperiksa melalui screenshot storyboard

Hatim
sumber
Hai, Terkadang bidang teks aman menyoroti kuning dengan kesalahan teks "Kata Sandi Kuat", Apakah ada solusi?
Saravanan
1

Untuk SwiftUI, coba

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

Secara pemrograman (Swift 4 & 5)

self.passwordTextField.isSecureTextEntry = true
Arunabh Das
sumber
1
Untuk swift 3 dan kemudian sintaksnya diubah, lihat jawaban di atas.
mojtaba al moussawi
Jawaban saya adalah untuk Swift 4
Arunabh Das
2
Apakah Anda yakin ini Swift 4? Tidak ada properti atau metode bernama secure untuk textField ... untuk swift 4 kita menggunakan self.passwordTextField.isSecureTextEntry = true
mojtaba al moussawi