Как установить фон EditText и атрибуты многоточия через @style? - PullRequest
0 голосов
/ 22 марта 2012

У меня есть EditText в моем XML как

<!-- Inside RelativeLayout -->
<EditText
    android:id="@+id/edtEmail"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/edtPhone"
    android:layout_alignLeft="@id/strut"
    android:layout_alignBaseline="@+id/txtLabelEmail"
    android:inputType="textEmailAddress"
    android:singleLine="true"
    android:imeOptions="actionDone"
    android:hint="@string/profile_email_hint"
    style="@style/listTextValue"
    android:background="@drawable/edittext_bg"
    android:ellipsize="end" />

Стиль

<style name="listTextValue" parent="android:Widget.EditText">
    <item name="android:textSize">@dimen/listTextSize</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textColor">@color/black</item>
    <item name="android:background">@drawable/edittext_bg</item>
    <item name="android:focusable">true</item>
    <item name="android:focusableInTouchMode">true</item>
    <item name="android:singleLine">true</item>
    <item name="android:ellipsize">end</item>
</style>

Если я удалю атрибут background из EditText в Layout xml, фоновое изображение будетисчез.Если я удаляю атрибут ellipsize из EditText в Layout xml, текст подсказки будет расширен до двух строк.

Поскольку этот атрибут доступен в стиле по предложению Eclipse, почему они не работают, когдапоставить в стиле?

Редактировать: Мой плохой, графический редактор не показывал фон.Это был другой экран.

У меня есть другой XML-макет с теми же атрибутами для EditText, фон был показан правильно.

Разница между макетом заключается в том, что первый использовался внутри фрагмента.в то время как последний используется непосредственно в Activity.

Это действительно странно: S

1 Ответ

1 голос
/ 22 марта 2012

Я думаю, вы должны попробовать android:textAppearance="@style/your_style".Это работает для TextView и TextView является родителем EditText.Я думаю, что это также должно работать.

...