2012-01-24 20 views
8

ICSの場合、android:Theme.Lightに基づくテーマを使用している場合、を使用している場合はのエラーポップアップのテキストが白で背景がそのままです。EditTextのエラーポップアップのテキストの色を変更する方法は?

私のテーマに<item name="android:textColorPrimaryInverse">#ff000000</item>を追加してこの問題を解決できます。これが役に立ちますが、その変更を行うことによって、textColorPrimaryInverseを使用する他のテキストが白から黒に変わり、おそらく表示されないことが少し心配です。私はむしろ、そののポップアップが表示されているその属性を変更するか、そのアクティビティのみを変更します。

明確化

私は、ユーザーがEditTextに何かを間違って入力し、エラーメッセージを表示ポップアップの、財産、好ましくはテキストの色を変更したいと思います。

+0

ポップアップの背景描画可能に変更することができれば、それは、またいいだろう。これらのプロパティを変更する方法はありませんか? – abbath

答えて

0

コード使用http://developer.android.com/reference/android/view/View.html#setBackgroundResource(int)またはhttp://developer.android.com/reference/android/view/View.html#setBackgroundColor(int)。それらはViewに属しますが、EditTextはそれらを継承します。第2のメトイドはより簡単で、第1のメトイドはより一貫しています。

編集:ああ、もっと難しい質問です。 EditText.setError(CharSequenceエラー、Drawableアイコン)を使用すると、アイコンにエラーテキストを配置できますか?アイコンのsetBounds(Rect)を設定することができます。そのため、十分な大きさがあります。アイコンは必要な色にすることができます。

しかし、私はonKey、beforeTextChanged、onTextChangedを使用し、独自のエラーメッセージをトーストとして表示します。トーストの場合、通常のビューを使用することができます。

+0

私の質問ははっきりしないと思います。私は 'EditText'の背景を変更しようとしているのではなく、エラーを示すポップアップのテキストの色を変更しようとしています。 –

+0

申し訳ありませんが、答えに追加を見てください。 – Gangnus

1

あなたはこのようにそれを行うことができます。

editText.setError(Html.fromHtml("<font color='red'>Error Message!</font>")); 
関連する問題