0

私はXMLにEditTextを持っています

<!-- 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>

Layout xml の EditText からbackground属性を削除すると、背景画像が消えてしまいます。Layout xml の EditText からellipsize属性を削除すると、ヒント テキストが 2 行に展開されます。

この属性は Eclipse の提案から Style で使用できるため、スタイルに配置すると機能しないのはなぜですか?

編集:私の悪い GUI エディターは背景を表示しませんでした。別画面でした。

EditText に同じ属性を持つ別のレイアウト XML があり、背景が正しく表示されました。

レイアウトの違いは、最初のものはフラグメント内で使用され、後者はアクティビティ内で直接使用されたことです。

これは本当に奇妙です:S

4

1 に答える 1

1

やってみるべきだと思いますandroid:textAppearance="@style/your_style"。それはのために働き、TextViewTextView親ですEditText。私はそれもうまくいくはずだと思います。

于 2012-03-22T08:51:49.320 に答える