我试图在工具栏中使用EditText。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?colorPrimary"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<EditText
android:id="@+id/search_field"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:text="Test Text" />
</android.support.v7.widget.Toolbar>
</LinearLayout>
在棒棒糖上,EditText的文字颜色正如我所期望的那样,文字较浅。
在Lollipop之前,使用较暗的文本对文本进行着色。
如果不直接在EditText上对文本颜色进行硬编码(或使用样式来完成相同的操作),有没有办法在不同版本中获得一致的颜色? EditText在Lollipop之前正确地将其背景着色,而不是文本颜色。
答案 0 :(得分:0)
在styles.xml中设置textColorPrimary属性
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">
....
<item name="android:textColorPrimary">@android:color/white</item>
</style>