在Android中覆盖EditText的样式

时间:2012-06-25 08:59:41

标签: android styles android-edittext

我需要覆盖两个EditText实例的样式。我有两个问题:

1)一个EditText用于输入密码但具有相同的字体。如果我删除password = true它可以工作。默认情况下,字体= sans。

<style name="customEdit" parent="@android:style/Widget.EditText">
    <item name="android:password">true</item>
    <item name="android:typeface">serif</item>  //doesn work.
</style>

2)这两个字段都有提示。我需要设置这些提示的颜色;可能吗?我没有找到这样的东西:android:hintColor ...

<item name="android:textColor">#acacac</item> //works for text only.

我为密码类型尝试了两种变体:

  • 机器人:的inputType = “textPassword”
  • 机器人:密码=真

即使在“UI构造函数”中,两者都会自动将字体更改为默认值。

2 个答案:

答案 0 :(得分:5)

对于您的第二个问题,这可能会有所帮助(在EditText标记下):

        android:textColorHint="#3b64a8"

在您的活动中:

    passwordText.setTypeface(Typeface.SERIF);
    passwordText.setTransformationMethod(new PasswordTransformationMethod());

这里“passwordText”是密码的EditText。

答案 1 :(得分:1)

这应该可行,试试吧

<style name="customEdit" parent="@android:style/Widget.EditText">
        <item name="android:inputType">textPassword</item>
        <item name="android:password">true</item>
        <item name="android:typeface">serif</item> 
        <item name="android:textColorHint=">#F28EC1</item>
        <item name="android:textSize">20sp</item>
        <item name="android:textStyle">bold</item>         
    </style>