UILabel に代替パスワード文字を表示するにはどうすればよいですか?
-
01-07-2019 - |
質問
を表示する必要があります UITableView
ユーザーのアカウント資格情報が含まれます。このために、私が使用しているのは、 UILabels
で UITableViewCell
. 。パスワードを表示するときは、明らかに、実際のパスワードではなく、プレースホルダのパスワード文字を表示したいと思います。 UITextField
セキュリティ保護されたテキスト入力モードに設定されている場合。実は同じキャラを使いたいのですが、 UITextField
「*」の代わりに を使用します。
私の質問は、パスワード文字の文字コードは何ですかということです。 UITextField
セキュアモードのときは?
解決
UITextField を使用し、フィールドを編集不可にして、境界線のスタイルを変更して UILabel のように見せてはどうでしょうか?
他のヒント
これを行う方法は次のとおりです。たとえば、プロトタイプ セルのdetailTextLabel にパスワードを「点線で表示」します。
// self.password is your password string
NSMutableString *dottedPassword = [NSMutableString new];
for (int i = 0; i < [self.password length]; i++)
{
[dottedPassword appendString:@"●"]; // BLACK CIRCLE Unicode: U+25CF, UTF-8: E2 97 8F
}
cell.detailTextLabel.text = dottedPassword;
パスワード文字はおそらく黒丸です。Mac では、オプション 8 を押すと、入力している場所に挿入されます。文字パレットには Unicode と表示されます 2022 およびUTF8 E2 80 A2.
非常に古い質問ですが、同じ問題に遭遇しました。Benzado は正しい考えを持っていますが、Unicode は次のようにすべきだと思います。 25cf. 。私には、それはまさに Apple がセキュリティで保護された UITextField で使用しているドットのように見えます。
iOS 10 では、黒い丸の Unicode 文字はセキュリティで保護されたテキスト フィールドと一致しなくなりました。使用する文字は⦁「Z NOTATION SPOT」(U+2981)です。
Swift 3 では次のものが使用できます。
passwordLabel.text = String(password.characters.map { _ in return "•" })