在Textview

时间:2017-12-22 12:13:00

标签: android textview

我尝试使用textview的自动调整功能。我只是从谷歌文档复制,但它没有渲染布局。通货膨胀存在错误。

我的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:text="@string/title_home"
        android:autoSizeTextType="uniform"
        android:autoSizePresetSizes="@array/autosize_text_sizes" />
</LinearLayout>

arrays.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <array name="autosize_text_sizes">
        <item>10sp</item>
        <item>12sp</item>
        <item>20sp</item>
        <item>40sp</item>
        <item>100sp</item>
    </array>
</resources>

渲染错误

  

呈现期间引发异常:二进制XML文件行#-1:错误   在。膨胀类java.lang.UnsupportedOperationException   android.content.res.Resources_Delegate.obtainTypedArray(Resources_Delegate.java:531)     在android.content.res.Resources.obtainTypedArray(Resources.java:615)     在android.widget.TextView。(TextView.java:1233)at   android.widget.TextView。(TextView.java:832)at   android.widget.TextView。(TextView.java:828)at   sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)     在   sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)     在   sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)     at java.lang.reflect.Constructor.newInstance(Constructor.java:423)     在android.view.LayoutInflater.createView(LayoutInflater.java:647)     在android.view.BridgeInflater.onCreateView(BridgeInflater.java:166)     在android.view.LayoutInflater.onCreateView(LayoutInflater.java:720)     在   android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:788)     在   android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:225)     在   android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)     在   android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:863)     在   android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)     在android.view.LayoutInflater.rInflate(LayoutInflater.java:837)at   android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)     在android.view.LayoutInflater.inflate(LayoutInflater.java:515)at   android.view.LayoutInflater.inflate(LayoutInflater.java:394)at   com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:325)     在com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:384)     在   com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:193)     在   com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:547)     在   com.android.tools.idea.rendering.RenderTask.lambda $ $膨胀3(RenderTask.java:681)     在java.util.concurrent.FutureTask.run(FutureTask.java:266)at   java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)     在   java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)     在java.lang.Thread.run(Thread.java:745)

注意:自动调整功能在没有autoSizePresetSizes的情况下运行良好。即mintextsize和maxtextsize。什么是解决方法。 使用comiple和target sdk版本27.0.2,支持库27.0.2和android studio 3.0.1。将渲染api从最好的改为27和26,但没有奏效。

0 个答案:

没有答案