Neo Algeria
Neo Algeria

Reputation: 255

an issue with copy in EditText (android)

I'm getting this error when trying to copy text in editText :

    Exception java.lang.NumberFormatException: Invalid int: "res/drawable/edit_text_material.xml"
java.lang.Integer.invalidInt (Integer.java:138)
java.lang.Integer.parse (Integer.java:410)
java.lang.Integer.parseInt (Integer.java:367)
com.android.internal.util.XmlUtils.convertValueToInt (XmlUtils.java:133)
android.content.res.TypedArray.getInt (TypedArray.java:357)
android.view.animation.Animation.<init> (Animation.java:248)
android.view.animation.AnimationSet.<init> (AnimationSet.java:81)
android.view.animation.AnimationUtils.createAnimationFromXml (AnimationUtils.java:117)
android.view.animation.AnimationUtils.createAnimationFromXml (AnimationUtils.java:95)
android.view.animation.AnimationUtils.loadAnimation (AnimationUtils.java:76)
android.widget.Editor$SelectionPopupWindow.createAnimations (Editor.java:4086)
android.widget.Editor$ActionPinnedPopupWindow.<init> (Editor.java:2543)
android.widget.Editor$ActionPopupWindow.<init> (Editor.java:3577)
android.widget.Editor$SelectionPopupWindow.<init> (Editor.java:4074)
android.widget.Editor$SelectionHandleView.getActionPopupWindow (Editor.java:5337)
android.widget.Editor$SelectionModifierCursorController.show (Editor.java:5305)
android.widget.Editor.startSelectionActionMode (Editor.java:1715)
android.widget.Editor.performLongClick (Editor.java:1020)

android.app.ActivityThread.main (ActivityThread.java:5438)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:738)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:628)

This is my layout:

       <android.support.design.widget.TextInputLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="10dp"
                android:textColorHint="#565d66">

                <EditText
                    android:id="@+id/userEditText"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="@string/registration.hint.user"
                    android:textColor="#565d66"
                    android:theme="@style/Custom.EditText" />

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



// this is the theme i'm using in editText:

      <style name="Custom.EditText" parent="Base.Widget.AppCompat.EditText">
        <item name="colorControlNormal">#565d66</item>
        <item name="colorControlHighlight">@color/colorPrimary</item>
        <item name="colorControlActivated">@color/colorPrimary</item>
    </style>

android version : 6.0.1 , device : redmi note 4

Upvotes: 6

Views: 1491

Answers (2)

amuyu
amuyu

Reputation: 236

You add color resource.

<color name="customEditText">#565d66</color>

and modify your style code.

<style name="Custom.EditText" parent="Base.Widget.AppCompat.EditText">
    <item name="colorControlNormal">@color/customEditText</item>
    <item name="colorControlHighlight">@color/colorPrimary</item>
    <item name="colorControlActivated">@color/colorPrimary</item>
</style> 

You try this

Upvotes: 1

Frandall
Frandall

Reputation: 418

Well, I also encounter this problem and I solve it by removing the style parent.

<style name="Custom.EditText">
    <item name="colorControlNormal">#565d66</item>
    <item name="colorControlHighlight">@color/colorPrimary</item>
    <item name="colorControlActivated">@color/colorPrimary</item>
</style>

I think the cause of the error is each smartphone vendor make custom UI and we need to use their default style for edittext.

Just try to make additional edittext without style and try to copy the text. Compare it with the one that have custom style, the context menu will be weird.

PS: Sorry for my bad english

Upvotes: 2

Related Questions