EditText(Android)中的复制问题

4

在尝试复制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)

这是我的布局:
       <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版本:6.0.1,设备型号:红米Note 4。


2
请问您能否分享一下您的Java代码? - Mehul Kabaria
你在哪里使用 edit_text_material 主题? - mrid
异常已清除:尝试将路径解析为数字。 - Jacek Cz
2
出现在小米设备上? - Noman Rafique
2
我在小米设备上也遇到了这个问题。 - saltandpepper
显示剩余4条评论
2个回答

2

我也遇到了这个问题,解决方法是移除样式的父元素。

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

我认为错误的原因是每个智能手机厂商都会制作定制化用户界面,我们需要使用他们默认的EditText样式。
尝试创建一个没有样式的额外EditText并复制文本。将其与具有自定义样式的EditText进行比较,上下文菜单将会很奇怪。
PS:抱歉我的英语不好。

1
你添加了颜色资源。
<color name="customEditText">#565d66</color>

并修改您的样式代码。

<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> 

你可以试试这个。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接