2021更新
您可以使用这个属性来控制下划线的颜色。
app:boxStrokeColor="@color/green"
在styles.xml文件中添加以下样式
<style name="textInputLayout.GrayLabel"
parent="Widget.Design.TextInputLayout">
<item name="hintTextAppearance">@style/AppTheme.TextFloatLabelAppearance</item>
</style>
<style name="AppTheme.TextFloatLabelAppearance"
parent="TextAppearance.Design.Hint">
<!-- Floating label appearance here -->
<item name="android:textColor">@color/YOUR_COLOR</item>
<item name="android:textSize">@dimen/YOUR_TEXT_SIZE</item>
</style>
并像这样使用:
<android.support.design.widget.TextInputLayout
style="@style/textInputLayout.GrayLabel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dimen_8dp">
<style name="style">
<item name="colorAccent">your_color</item>
</style>
然后
<android.support.design.widget.TextInputLayout
...
app:theme="@style/style" />
<style name="myHintText" parent="TextAppearance.AppCompat">
<item name="android:textColor">@color/YOUR_COLOR</item>
<item name="android:textSize">13sp</item>
<item name="android:textColorHint">@color/YOUR_COLOR</item>
<item name="android:colorControlHighlight">@color/YOUR_COLOR</item>
</style>
注意:需要最低API级别为21