渲染期间引发异常:16(详细信息)

时间:2018-10-21 14:17:36

标签: android xml android-studio

Android Studio中的

预览无法正常工作。 试图更改API,但没有结果。

  

渲染期间引发异常:16(详细信息)

java.lang.ArrayIndexOutOfBoundsException: 16
    at android.text.StaticLayout.generate(StaticLayout.java:854)
    at android.text.StaticLayout.<init>(StaticLayout.java:603)
    at android.text.StaticLayout.<init>(StaticLayout.java:50)
    at android.text.StaticLayout$Builder.build(StaticLayout.java:425)
    at android.widget.TextView.makeNewLayout(TextView.java:8272)
    at android.widget.TextView.assumeLayout(TextView.java:8104)
    at android.widget.TextView.onPreDraw(TextView.java:6742)
    at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:977)
    at android.view.AttachInfo_Accessor.dispatchOnPreDraw(AttachInfo_Accessor.java:46)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.renderAndBuildResult(RenderSessionImpl.java:404)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.renderAndBuildResult(RenderSessionImpl.java:543)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.render(RenderSessionImpl.java:426)
    at com.android.layoutlib.bridge.BridgeRenderSession.render(BridgeRenderSession.java:108)
    at com.android.ide.common.rendering.api.RenderSession.render(RenderSession.java:154)
    at com.android.ide.common.rendering.api.RenderSession.render(RenderSession.java:136)
    at com.android.tools.idea.rendering.RenderTask.lambda$renderInner$5(RenderTask.java:671)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

2 个答案:

答案 0 :(得分:1)

在我的自定义视图中,我在TextInputEditText字段中遇到了同样的问题(顺便说一下,它是com.google.android.material.textfield.TextInputEditText)。

android:hint="@string/long_hint_descr"有问题。您从string.xml删除了long_hint_descr的几个单词,错误消失了。

但是最简单的方法是使用短字符串添加tools:hint="short hint"并保留字符串中的长字符串。

答案 1 :(得分:0)

我遇到了此错误。

在这种情况下,我做了以下事情:

在Android Studio上: 文件--->使缓存无效/重新启动...