在我的应用程序中有一个textField,用户必须输入密码,我希望当他输入一个字符时,将其更改为'•'我怎么能这样做?
答案 0 :(得分:260)
您可以直接在Xcode中实现此目的:
最后一个复选框,请确保选中secure
。
或者您可以使用代码执行此操作:
标识文本对象是否应隐藏正在输入的文本。
<强>声明强>
optional var secureTextEntry: Bool { get set }
<强>讨论强>
默认情况下,此属性设置为false
。将此属性设置为true
会创建一个密码样式的文本对象,该对象会隐藏正在输入的文本。
示例:强>
texfield.secureTextEntry = true
答案 1 :(得分:41)
passwordTextField.isSecureTextEntry = true
答案 2 :(得分:9)
在XCode 6.3.1中,如果您使用template <typename Iter>
using value_type_t = typename std::iterator_traits<Iter>::value_type;
template <typename Iter>
using Comp = std::function<bool(const value_type_t<Iter>&, const value_type_t<Iter>&)>;
template <typename RAIterator>
void somefunction(RAIterator beg, RAIterator end,
Comp<RAIterator> cmp = std::less<value_type_t<RAIterator>>{})
{
// ...
}
,则不会看到NSTextField
的复选框。
而不是使用secure
使用NSTextField
我猜这是Swift / Objective-C的变化,因为现在有一个安全文本字段的类。在上面的链接中它显示NSSecureTextField
如果您了解更多关于何时/为什么/什么版本的Swift / Objective-C,XCode或OS X这个
答案 3 :(得分:9)
答案 4 :(得分:1)
对于SwiftUI,请尝试
TextField ("Email", text: $email)
.textFieldStyle(RoundedBorderTextFieldStyle()).padding()
SecureField ("Password", text: $password)
.textFieldStyle(RoundedBorderTextFieldStyle()).padding()
答案 5 :(得分:0)
您可以通过使用属性检查器中文本字段的属性来实现
从情节提要板上轻按“文本字段”,然后转到“属性检查器”,然后选中“安全文本输入” SS is added for graphical overview to achieve same
的复选框答案 6 :(得分:-2)
以编程方式(快速4)
self.passwordTextField.secure(true)