代码之家  ›  专栏  ›  技术社区  ›  prom85

具有非空字符串的TextView setText与ArrayIndexOutOfBoundsException(与AccessibilityNodeInfo相关)崩溃

  •  0
  • prom85  · 技术社区  · 7 年前

    我的应用程序中有以下代码:

    fun updateFilterInfo(showing: Int, total: Int) {
        binding?.tvFilterLvl1?.text = "$showing / $total" // problematic line in AddItemFragment class - Line 562 
    }
    

    tvFilterLvl1 这是一个简单的问题 TextView ,我使用的是android x和kotlin,我认为这个例外永远不会发生。我不能指责这个问题。还有谁有过这个问题吗?有办法解决吗?

    我的应用程序出现以下异常:

    java.lang.ArrayIndexOutOfBoundsException: length=3; index=-1
    at android.text.SpannableStringBuilder.getSpansRec(SpannableStringBuilder.java:935)
    at android.text.SpannableStringBuilder.getSpans(SpannableStringBuilder.java:866)
    at android.text.SpannableStringBuilder.getSpans(SpannableStringBuilder.java:836)
    at android.text.SpannableStringBuilder.<init>(SpannableStringBuilder.java:80)
    at android.text.SpannableStringBuilder.subSequence(SpannableStringBuilder.java:1183)
    at android.view.accessibility.AccessibilityNodeInfo.setText(AccessibilityNodeInfo.java:2517)
    at android.widget.TextView.onInitializeAccessibilityNodeInfoInternal(TextView.java:12009)
    at android.view.View.onInitializeAccessibilityNodeInfo(View.java:7939)
    at android.view.View.createAccessibilityNodeInfoInternal(View.java:7898)
    at android.view.View.createAccessibilityNodeInfo(View.java:7883)
    at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:146)
    at android.view.accessibility.AccessibilityRecord.setSource(AccessibilityRecord.java:119)
    at android.view.View.onInitializeAccessibilityEventInternal(View.java:7835)
    at android.widget.TextView.onInitializeAccessibilityEventInternal(TextView.java:11990)
    at android.view.View.onInitializeAccessibilityEvent(View.java:7823)
    at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:7685)
    at android.view.View.sendAccessibilityEventUnchecked(View.java:7670)
    at android.view.View$SendViewStateChangedAccessibilityEvent.run(View.java:27420)
    at android.view.View$SendViewStateChangedAccessibilityEvent.runOrPost(View.java:27453)
    at android.view.View.notifyViewAccessibilityStateChangedIfNeeded(View.java:11856)
    at android.widget.TextView.setText(TextView.java:6027)
    at android.widget.TextView.setText(TextView.java:5847)
    at android.widget.TextView.setText(TextView.java:5804)
    at com.my.app.AddItemFragment.a(SourceFile:562)
    ...
    
    0 回复  |  直到 7 年前
        1
  •  0
  •   tasjapr    5 年前

    试着设定 android:importantForAccessibility="no" 在该视图的xml文件中

    推荐文章