【问题标题】:Android Customize EditText on Lollipop and Upper VersionAndroid 在 Lollipop 和更高版本上自定义 EditText
【发布时间】:2015-12-16 13:16:20
【问题描述】:

在 Android 5.0 和更高版本上,EditText 在其背景、光标上具有来自 AppTheme 的 colorAccent 色调。但我不想通过自定义应用这个 colorAccent。例如,我声明了我的主题风格,如下所示。

<style name="AppTheme" parent="Theme.AppCompat.Light">    
    <item name="colorPrimary">@color/color_primary</item>
    <item name="colorPrimaryDark">@color/color_primary_dark</item>
    <item name="android:textColorPrimary">@color/text_color_primary</item>
    <item name="android:textColorPrimaryInverse">@color/text_color_primary_inverse</item>
    <item name="colorAccent">@color/color_accent</item>
</style>

我想要的只是 colorAccent 仅适用于 EditText。有什么办法吗?

【问题讨论】:

    标签: android customization android-5.0-lollipop


    【解决方案1】:

    你为什么不定义一个新的风格

    <style name="AppTheme2" parent="Theme.AppCompat.Light">    
        <item name="colorPrimary">@color/color_primary</item>
        <item name="colorPrimaryDark">@color/color_primary_dark</item>
        <item name="android:textColorPrimary">@color/text_color_primary</item>
        <item name="android:textColorPrimaryInverse">@color/text_color_primary_inverse</item>
    </style>
    

    然后做:

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme2"/>
    

    【讨论】:

    • 愚蠢的我。我真的忘记了 android:theme 标签。谢谢:)
    【解决方案2】:

    我遇到了同样的问题,我所做的如下所示,

    <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@android:color/transparent"
            android:singleLine="true"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-21
      • 2014-01-31
      • 2013-05-30
      • 2011-11-11
      相关资源
      最近更新 更多