安卓:使用常规样式应用边距不起作用



我正试图为我的应用程序编写一个通用的style.xml。

我希望我所有的EditText视图都有特定的样式,所以我做了这样的事情:

<!-- Base application theme. -->
    <style name="MyAppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="android:editTextStyle">@style/App_EditTextStyle</item>
    </style>
    <style name="App_EditTextStyle">
        <item name="android:background" >#ff0000</item>
        <item name="android:textColor">#00ff00</item>
        <item name="android:layout_marginLeft">50dip</item>
        <item name="android:height">50dip</item>
    </style>

在清单中,我应用主题:

 <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/MyAppTheme" >

这是示例布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/main_layout">
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/editText"
        android:text="Test" />
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/editText2"
        android:text="Test2" />
</LinearLayout>

除保证金外,一切正常。由于某些原因,它不适用,我不得不手动将其添加到EditText中。我是不是错过了什么?

如果您想为所有EditText小部件执行此操作,请将其应用于LinearLayout标记:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/main_layout"
    style="@style/MyAppTheme">

最新更新