Android 我能';t找出stacktrace错误的问题
很明显,我在三星Nexus的应用程序中遇到了一个问题,我不明白是什么导致了这个问题Android 我能';t找出stacktrace错误的问题,android,stack-trace,Android,Stack Trace,很明显,我在三星Nexus的应用程序中遇到了一个问题,我不明白是什么导致了这个问题 java.lang.ArrayIndexOutOfBoundsException: length=244; index=1753 at android.text.MeasuredText.addStyleRun(MeasuredText.java:168) at android.text.MeasuredText.addStyleRun(MeasuredText.java:204) at android.text
java.lang.ArrayIndexOutOfBoundsException: length=244; index=1753
at android.text.MeasuredText.addStyleRun(MeasuredText.java:168)
at android.text.MeasuredText.addStyleRun(MeasuredText.java:204)
at android.text.StaticLayout.generate(StaticLayout.java:281)
at android.text.StaticLayout.<init>(StaticLayout.java:140)
at android.text.StaticLayout.<init>(StaticLayout.java:80)
at android.text.StaticLayout.<init>(StaticLayout.java:59)
at android.widget.TextView.makeSingleLayout(TextView.java:5901)
at android.widget.TextView.makeNewLayout(TextView.java:5741)
at android.widget.TextView.onMeasure(TextView.java:6098)
at android.view.View.measure(View.java:15172)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4814)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1390)
at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1038)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:576)
at android.view.View.measure(View.java:15172)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4814)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1390)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:681)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:574)
at android.view.View.measure(View.java:15172)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4814)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1390)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:681)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:574)
at android.view.View.measure(View.java:15172)
at android.widget.ScrollView.measureChildWithMargins(ScrollView.java:1196)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at android.widget.ScrollView.onMeasure(ScrollView.java:318)
at android.view.View.measure(View.java:15172)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4814)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1390)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:681)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:574)
at android.view.View.measure(View.java:15172)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4814)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at android.view.View.measure(View.java:15172)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:833)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:574)
at android.view.View.measure(View.java:15172)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4814)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2148)
at android.view.View.measure(View.java:15172)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:1848)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1100)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1273)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:998)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4212)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
at android.view.Choreographer.doCallbacks(Choreographer.java:555)
at android.view.Choreographer.doFrame(Choreographer.java:525)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
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:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
我曾试图重现这个问题,但我不能。我试了两款不同的摩托罗拉手机。似乎是TextView的一个已知错误。检查类似问题并 邮报上提到了银河系。第一个问题标记为将来发布,第二个问题似乎已经修复 更新
djmedic找到了一个解决办法我的经验可能会对那些不想在项目中添加自定义文本视图的朋友有所帮助 首先,我可以在Android仿真器(4.1.2,API 16)中重现这个错误。 在这之后,我决定找出是什么导致了这个错误。显然-某些格式(其中 导致创建“跨距”)。事实证明,在我的情况下,在两个地方进行更换就足够了,例如:
\“@username\”
为此:
\“@username\”
我也有同样的问题。这不仅仅是关于果冻豆的问题。它与文本视图有关,该视图向html转换的纯文本添加span标记,从而导致indexOutOfBounds异常。这方面有一个解决办法
用此自定义文本视图替换文本视图。如果跨度标记问题出现,则会捕获它,并以纯文本显示内容
public class PatchedTextView extends TextView {
public PatchedTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public PatchedTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public PatchedTextView(Context context) {
super(context);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
try{
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}catch (ArrayIndexOutOfBoundsException e){
setText(getText().toString());
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
}
@Override
public void setGravity(int gravity){
try{
super.setGravity(gravity);
}catch (ArrayIndexOutOfBoundsException e){
setText(getText().toString());
super.setGravity(gravity);
}
}
@Override
public void setText(CharSequence text, BufferType type) {
try{
super.setText(text, type);
}catch (ArrayIndexOutOfBoundsException e){
setText(text.toString());
}
}
}在更新Android Studio(或sdk..)后,遇到了同样的问题。我可以通过设置EditText的inputType来修复它
android:inputType="text"
非常感谢。这些链接很有帮助。我找到了一个解决方法,但如何实现它。现在是。这是一个单独的活动,我称之为?如果是,你怎么称呼它?如果要进入我的实际活动,我有错误。你应该用JellyBeanSpanFixTextView替换版面中的TextView来测试代码。它不是一个活动,而是一个自定义的文本视图。因此,将JellybeanPanfixTextView保存到某个地方,比如com.myproject.mycustomtextview。是我发现的在布局中使用自定义视图的教程。特别是,请看第3步,其中使用完全限定名称引用自定义视图。rlay3感谢您的回答。它救了我。非常感谢您对如何使用本课程的解释。谢谢somuch djmedic。。。你的问题救了我。我也有同样的问题。我对投票最多的答案有疑问。这对我来说非常有效=)
android:inputType="text"