Двойной щелчок для выбора текста из editText вызывает исключение ArithmeticException

В некоторых устройствах, когда я пытаюсь выбрать текст из edittext, чтобы скопировать его, вызвать

ArithmeticException

я использую этот edittext в деятельности выходит из AppCompatActivity

здесь исключение

E/MessageQueue-JNI: исключение в обратном вызове MessageQueue: handleReceiveCallback E/MessageQueue-JNI: java.lang.ArithmeticException: делить на ноль при
android.widget.java:3522) android.support.v7.internal.view.SupportActionModeWrapper$CallbackWrapper.onCreateActionMode (SupportActionModeWrapper.java:155) android.support.v7.app.AppCompatDelegateImpl7.7.Amp.Amp.AmpAWate () v7.app.AppCompatDelegateImplV7.startSupportActionModeFromWindow (AppCompatDelegateImplV7.java:748) android.support.v7.app.AppCompatDelegateImplV7.startSupportActionMode (AppCompatDelegateImplV7.java:642) android.support.v7.app.AppCompatDelegateImplV14$AppCompatWindowCallbackV14.startAsSupportActionMode (AppCompatDelegateImplV14.java:74) android.support.v7.app.AppCompatDelegateImplV14$AppCompatWindowCallbackV14.onWindowStartingActionMode (AppCompatDelegateImplV14.java:58) com.android.internal.policy.impl.PhoneWindow$DecorView.startActionMode (PhoneWindow.java:2981) com.android.internal.policy.impl.PhoneWindow$DecorView.startActionModeForChild (PhoneWindow.java:29) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.ForAGid (View) View.ViewGroup (ViewMision.View.Group) ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup).java. view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.AgGroup.roidGroup.ForGroup.roidGroup.ForGroup Java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.ViewGroup.startActionModeForChild (ViewGroup.java:710) android.view.View.startActionMode (View.java:5292) android.widget.Editor.startSelectionActionMode (Editor): java android.widget.Editor$SelectionModifierCursorController.onTouchEvent (Editor.java:5500) android.widget.Editor.onTouchEvent (Editor.java:1211) android.widget.TextView.onTouchEvent (TextView.java:9567) android.view.View.dispatchTouchEvent (View.java:8975) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransfor2Touchfor70Touch ForveTouch9 android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) andrans.isTisT.ViewT.Patch ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.widget.ScrollView.dispatchTouchEvent android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:270TatchGouch.vent.Group.ventEventGouch.ventEventGouch.ventEventGouch.ventEventGouch.ventEventGouch.ventEventGouch.ventEventGouch.ventEventGouch.ventEventGouch.ventEvent) android.View.Group.vent.Group.vent.Group.vent.Group.Ru.Ru.Ru ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouch970 android.View (ViewGroup).view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.GT.Group.View.Group.View.Group яв a: 2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2371) android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:2709) android.dGT.Gent.vent.ViewG.View.Group 2371) com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent (PhoneWindow.java:2568) com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent (PhoneWindow.java:1776) android.app.Activity.dispatchTouchEvent (Activity.java:2866) android.support.v7.internal.view.WindowCallbackWrapper.dispatchTouchEvent (WindowCallbackWrapper.java:60) com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent (PhoneWindow.jpg: PhoneWindow.jpg android.view.View.dispatchPointerEvent (View.java:9180) android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent (ViewRootImpl.java:4734) android.view.ViewRootImpl$ViewPostImeInputStage.onProcess (ViewRootImpl.java:4572) View.o.Imp.l.Imp.Lo.Ro.Ro.Ro.Ro.Rj.Rj.Rj.Rj.Rj.Rj.Rj.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.Ru.jpg android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:4149) android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:4115) android.view.ViewRootImpl$Asynfor4.ind.o.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:4123) android.view.ViewRootImpl$AsyncInputStage.apply (ViewRootImpl.java:4286) android.view.ViewRootImpl$InputStage.deliver (ViewRo).ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:4149) android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:4115) android.view.ViewRootImpl$InputStage.apply12l.mpI.Imp1.It4 InputStage.deliver (ViewRootImpl.java:4096) android.view.ViewRootImpl.deliverInputEvent (ViewRootImpl.java:6594) android.view.ViewRootImpl.doProcessInputEvents (ViewRootImpl.java:6484) android.view.ViewRootImpl.enqueueInputEvent (ViewRootImpl.java:6455) android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent (ViewRootImpl.java:6684) android.view.InputEventReceiver.dispatchInputEvent (InputEventReceiver.java:185) android.os.MessageQueue.nativePollOnce (MessageQueue.java) android.os.MessageQueue.next (MessageQueue.java:14L) android.os.op. Looper.java:130) android.app.ActivityThread.main (ActivityThread.java:5944) java.lang.reflect.Method.invoke (Method.java) java.lang.reflect.Method.invoke (Method.java:372) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1399)

причина исключения в этом методе

android.widget.Editor.updateShowAsAction (Editor.java:6034)

вот мой XML-код для редактирования текста

            <EditText 
            android:id="@+id/etIdNumber"
            android:hint="@string/user_profile_myInfo_add_identification_dialog_et_hint"
            android:inputType="number"
            style="@style/et_rounded_corner_white_bg"
            />

и вот мой стиль

    <style name="et_rounded_corner_white_bg" parent="horizontal_margin">
     <item name="android:layout_width">match_parent</item>
     <item name="android:layout_height">wrap_content</item>
     <item name="android:textColor">@color/black</item>
     <item name="android:background">@drawable/editfield_bg</item>
     <item name="android:textColorHint">@color/font_very_light_gray</item>
     <item name="android:padding">@dimen/padding_5dp</item>
     <item name="android:layout_marginBottom">@dimen/padding_10dp</item>
     <item name="android:textCursorDrawable">@null</item>
</style>

2 ответа

Эта ошибка возникает, когда устройство настраивает кнопки действий копирования / вставки на панели действий после двойного щелчка по тексту EditText. Он получит атрибут minWidth вашего actionButtonStyle. Вместо установки 0dp используйте 1dp. Пример кода:

<item name="android:actionButtonStyle">@style/myTheme.ActionButtonStyle</item>

<style name="myTheme.ActionButtonStyle" parent="@android:style/Widget.Holo.Light.ActionButton">
    <item name="android:background">@drawable/actionbutton_bg</item>
    <item name="android:textColor">@color/title_foreground</item>
    <item name="android:textSize">16sp</item>
    <item name="android:textStyle">normal</item>
    <item name="android:minWidth">1dp</item>
    <item name="android:paddingLeft">12dp</item>
    <item name="android:paddingStart">12dp</item>
    <item name="android:paddingRight">12dp</item>
    <item name="android:paddingEnd">12dp</item>
</style>

Это сделает работу!

<EditText 
 android:id="@+id/etIdNumber"
 android:hint="@string/user_profile_myInfo_add_identification_dialog_et_hint"
 android:inputType="number"
 style="@style/et_rounded_corner_white_bg"/>

Удалить из стиля эту строку:

<item name="android:textCursorDrawable">@null</item>
Другие вопросы по тегам