我有一个视图,其中包含另一个带有“include”组件的视图(请参阅http://android-developers.blogspot.com/2009/02/android-layout-tricks-2-reusing-layouts.html)
在包含的视图中有一些EditText。
这些EditText存在一些问题:
如果Edittext不在<include>
标签中,则不会发生...
你对这个问题有任何想法吗?
的问候, 克里斯托夫
答案 0 :(得分:16)
我在使用Android 4.0的三星设备上长按EditText或TextView时出现同样的问题。
此处的崩溃日志
java.lang.ArithmeticException: divide by zero
at android.widget.TextView$SelectionActionModeCallback.onCreateActionMode(TextView.java:10647)
at com.android.internal.policy.impl.PhoneWindow$DecorView.startActionMode(PhoneWindow.java:2382)
at com.android.internal.policy.impl.PhoneWindow$DecorView.startActionModeForChild(PhoneWindow.java:2322)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.ViewGroup.startActionModeForChild(ViewGroup.java:571)
at android.view.View.startActionMode(View.java:3687)
at android.widget.TextView.startSelectionActionMode(TextView.java:10451)
at android.widget.TextView.performLongClick(TextView.java:9570)
at android.view.View$CheckForLongPress.run(View.java:14241)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4507)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(Native Method)
@Dumpstate > dumpstate -k -t -n -z -d -o /data/log/dumpstate_app_error
这是因为当你长按文字时,三星系统会选择要突出显示的文字 并使用onCreateActionMode()来显示剪切,复制,粘贴等按钮。
如果您使用Android 4.0, 它将显示在ActionBar上,并在应用程序的style.xml中使用ActionBar主题样式。 我找到了我的
"@android:style/Widget.Holo.ActionButton"
将minWidth设置为零, 导致三星系统计算动作按钮位置的结果
java.lang.ArithmeticException: divide by zero
最后将minWidth设置为非零,问题解决了。
答案 1 :(得分:2)
我想评论下面给出的答案(https://stackoverflow.com/a/11966733/1777346),但还没有足够的声誉点!
我们也遇到了相同的&#34; java.lang.ArithmeticException:除以零&#34;三星设备例外(没有测试其他设备..所有三星)。当长按EditText字段中的现有文本时会发生这种情况。
以下解决方案有效..我们定义了以下样式。将minWidth更改为&#34; 1&#34;修好了。
<style name="ActionButtonStyle" parent="@android:style/Widget.Holo.Light.ActionButton">
<item name="android:minWidth">0dp</item>