2013年11月27日

[Android] IME以外からパスワードを入力させるときでも、文字がわかるようにする

パスワードを入力する画面を作っています。
この画面ではアプリが表示するキーボードを使うため、IMEは使いません。
キーボードが押される度に以下のようなコードを実行していました。
textView.setText(textView.getText() + moji);

この方法でも文字の追加は出来ますが、入力した文字がわかりません。
マスクされた状態で表示されてしまうのです。
通常であればパスワード入力欄は*や●でマスクされる前に1秒程度文字を確認できる時間があります。

特別な処理が必要かと考えましたが、なんてことはありませんでした。
TextViewに文字を追加するためのメソッドが用意されていました。
textView.append(moji);

これで期待通りの動きになりました。

今までTextViewの操作はほとんどgetText()/setText()で行っていたので、append()の存在に気付きませんでした。
思い込みはダメですね。


posted by t2low at 21:00| Android