2013-03-02 9 views
7

EditTextがRTLテキストで埋められるため、エラー描画可能な描画(とポップアップ)の重力を変更する方法はありますか?テキストが入力されたので、ここでEditText setError描画可能な重力を変更する

ので

error drawable always right

描画可能定期的なエラーの例である私が試したのEditText

の左側に表示するポップアップたいRTLですカスタムdrawableを適用するには、DrawableにはsetGravityメソッドがないようです。

ありがとうございます。

答えて

1

通常の方法では不可能ですが、Android TextViewクラスを拡張して、Androidがポップアップを膨張させるために使用するレイアウトを変更することができます。私はこれを自分で試していないが、うまくいく可能性がある。

私はのTextViewのsourceで簡単に見ていたし、thisレイアウトに参照し、このライン

final TextView err = (TextView) inflater.inflate(com.android.internal.R.layout.textview_hint, 
        null); 

を見つけました。

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@drawable/popup_inline_error" 
    android:textAppearance="?android:attr/textAppearanceSmallInverse" 
/> 

ここで重力を追加すると、そのトリックを行うことができます。ドロウアブルについても同様のアプローチが適用可能である。

+0

誰もこれを試してみました、それを削除するまでそれが滞在しますか? – ViliusK

-2

それは一年以上だが、それは他の誰かを助けている場合、あなたが使用することができます。

myEdit.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_error, 0, 0, 0); 

いますが、

myEdit.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0); 
+0

問題は、プログラム可能に描画可能を設定することではなく、描画可能な描画の重力を変更することでした。 –

関連する問題