UILabel に代替パスワード文字を表示するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/83687

  •  01-07-2019
  •  | 
  •  

質問

を表示する必要があります UITableView ユーザーのアカウント資格情報が含まれます。このために、私が使用しているのは、 UILabelsUITableViewCell. 。パスワードを表示するときは、明らかに、実際のパスワードではなく、プレースホルダのパスワード文字を表示したいと思います。 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 "•" })
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top