0

I'm new to android programming, but all the issues that describe my issue don't seem to help.

Edittext color is white in appcompat 22.2

Android EditText Text Color is always white

Android edittext color white on white background

Surely its something super silly I'm looking over

IssuePictured

My Activity:

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

        <EditText 
            android:id="@+id/username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fontFamily="@string/font_family_regular"
            android:hint="@string/user_name"
            android:maxLines="1"
            android:nextFocusDown="@+id/password"
            android:imeOptions="actionNext"
            android:inputType="text"
            android:text=""
            android:textColor="#000000"/>
</android.support.design.widget.TextInputLayout>

My Styles XML

<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
    <!-- Customize your theme here. -->

    <item name="android:textColor">@android:color/black</item>
    <item name="android:textColorHint">@android:color/darker_gray</item>
    <item name="colorAccent">#0000FF</item>
    <item name="colorControlNormal">#0000FF</item>
    <item name="colorControlActivated">#0000FF</item>
</style>

</resources>

Graddle app

apply plugin: 'com.android.application'

android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
    applicationId "com.myapp"
    minSdkVersion 19
    targetSdkVersion 26
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner 
"android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 
'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', 
{
    exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:26.+'
compile 'com.android.support:design:26.+'
testCompile 'junit:junit:4.12'
}
KeLiuyue
  • 8,149
  • 4
  • 25
  • 42
merjr
  • 149
  • 1
  • 13

4 Answers4

1

I found the solution here posted by @Dahnark:

How to customize EditText field in android using AppCompat v7:21

Try to add the next code inside your EditText

 style="@style/Widget.AppCompat.EditText"

Check in real device.

In my EditText works, this is my EditText:

 <EditText
     android:id="@+id/editTextFacebookID"
     style="@style/Widget.AppCompat.EditText"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:layout_centerVertical="true"
     android:layout_marginLeft="64dp"
     android:layout_marginRight="8dp"
     android:gravity="center_vertical"
     android:hint="Facebook ID"
     android:textColor="@color/md_text"                
     android:textColorHint="@color/md_disabled_hint_text" />

You can check md_text and md_disabled_hint_text colors here: Google Colors

And this is a v19 style of my app:

 <style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
     <!-- Customize your theme here. -->
     <item name="colorPrimary">@color/md_red_500</item>
     <item name="colorPrimaryDark">@color/md_red_700</item>
     <item name="colorAccent">@color/md_blue_A200</item>
     <item name="colorControlHighlight">@color/md_black_1000_25</item>
     <item name="colorControlNormal">@color/md_black_1000_50</item>
     <item name="colorSwitchThumbNormal">@color/md_grey_200</item>
     <item name="android:colorForeground">@color/md_black_1000_75</item>
     <item name="android:windowTranslucentNavigation">@bool/translucentNavigationBar</item>
     <item name="android:windowTranslucentStatus">@bool/translucentStatusBar</item>

     <!-- Navigation Drawer Arrow Style. -->
     <item name="drawerArrowStyle">@style/DrawerArrowStyle</item>

     <!-- Overflow Button Style. -->
     <item name="actionOverflowButtonStyle">@style/OverflowStyle</item>
 </style>

My EditText is gray when is unfocused, and blue focused, it takes the color from colorAccent.

It changes color when I change the AppTheme.

Satan Pandeya
  • 3,747
  • 4
  • 27
  • 53
merjr
  • 149
  • 1
  • 13
0

Change the appcomcat version as below and check

compile 'com.android.support:appcompat-v7:26.+'

Sunil P
  • 3,698
  • 3
  • 13
  • 20
0

You should add android:theme in TextInputLayout instead of EditText Section .

<android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme">

You should set

compile 'com.android.support:appcompat-v7:26.0.1'
compile 'com.android.support:design:26.0.1'
IntelliJ Amiya
  • 74,896
  • 15
  • 165
  • 198
0

I think you should have to try this:-

activity_main.xml

<android.support.design.widget.TextInputLayout
    android:id="@+id/input_layout_name"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:id="@+id/ed_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Enter Your Name"
        android:textColor="@android:color/black"/>

</android.support.design.widget.TextInputLayout>

And Update youe style.xml like this:-

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

IntelliJ Amiya
  • 74,896
  • 15
  • 165
  • 198
Shubham Sejpal
  • 3,556
  • 2
  • 14
  • 31