2011-08-30 3 views
9

私はこの "奇妙な"動作に遭遇する唯一の人ですか?EditTextヒントは、inputType = "textpassword"のとき余分なスペースを表示します

私の活動内でのEditTextを置き、次のようにその inputType =「textPassword」を設定:

<EditText android:text="" android:id="@+id/EditText01" 
      android:hint="This is a hint" android:inputType="textPassword" 
      android:layout_width="wrap_content" android:layout_height="wrap_content"></EditText> 

ヒントは単語間に大きな/ダブルスペースで表示されます。

inputType属性を削除すると、すべて正常に戻ります。 この現象に関する既知の問題は見つかりませんでした。

BTW-これが重要である理由あなたが(それはあまりないです)不思議場合は、「textpassword」それは良い見ていないし が2つのEditTextウィジェットを他の下に1を入れて試してみて、そのうちの一つのinputType を設定。 同じ形式を使用するようにパスワードやその他の編集テキストを変更する方法はありますか?

ありがとう

PS。質問は最初にここに追加されました:http://groups.google.com/group/android-developers/browse_thread/thread/88738bb8d8046f6fしかし私は答えを見つけませんでした。

答えて

8

パスワードフィールドの場合、書体がモノスペースに自動的に設定されているために起こります。パスワードフィールドにandroid:typeface="normal"を設定しても効果はありません。

ここ

TextView sourcesからコード:

if (password) { 
    setTransformationMethod(PasswordTransformationMethod.getInstance()); 
    typefaceIndex = MONOSPACE; 
} else if ((mInputType&(EditorInfo.TYPE_MASK_CLASS 
      |EditorInfo.TYPE_MASK_VARIATION)) 
      == (EditorInfo.TYPE_CLASS_TEXT 
        |EditorInfo.TYPE_TEXT_VARIATION_PASSWORD)) { 
    typefaceIndex = MONOSPACE; 
} 

私はヒントのオーバーライド書体でカスタムコントロールを実装せずに解決策を見つけることができません。

P.S.:1つの解決方法がありますが、他のEditTextでは書体をモノスペースに設定することは必ずしも可能ではありません。

+0

お返事ありがとうございます。それは私を助けた。私にとっては、書体=「モノスペース」のソリューションを使いました。事はすべてのところで同じであるに過ぎませんでした。 – Sebastian

+0

私はあなたを助けてうれしいです。私の答えがあなたに役立つなら、それを受け入れられた答えとしてマークしてください。 –

+0

ありがとう、それは私を助けた –

4

Doing mEditText.setTypeface(Typeface.DEFAULT);は私に問題を解決します。

+0

良い解決策。私はこれのために4時間苦労し、ついにこれを仲間に感謝する – Krishna

関連する問題