Сховати пароль із “•••••••” у текстовому полі


132

У моєму додатку є текстове поле, куди користувачеві потрібно ввести пароль, і я хочу, щоб він, коли він вводив символ, змінив його на «•», як це зробити?

Відповіді:


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 це нова правильна відповідь
Джозеф Декарло

12

Swift 4 та Xcode версії 9+

Можна встановити за допомогою "Безпечного введення тексту" через Interface Builder

Захищене введення тексту перевірено за допомогою скріншота


Привіт! Іноді захищене текстове поле виділяє жовтий колір із текстовою помилкою "Сильний пароль". Чи є рішення?
Сараванан

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
Для швидкого перегляду 3 і пізніше синтаксис було змінено, див. Відповіді вище.
mojtaba al moussawi

Моя відповідь за Swift 4
Arunabh Das

2
Ви впевнені, що це Swift 4? Немає властивості чи методу з ім'ям безпечного для textField ... для swift 4 ми використовуємо self.passwordTextField.isSecureTextEntry = true
mojtaba al moussawi
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.