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

Android Studio未在预览和设计中呈现AppCompatButton

  •  0
  • AVEbrahimi  · 技术社区  · 6 年前

    我有这个AppCompatButton:

    <android.support.v7.widget.AppCompatButton
                        android:id="@+id/btn1"
                        android:layout_width="0dp"
                        style="@style/buttons_style"
                        android:text="@string/text1" />
    

    但是Android Studio designer预览就这样显示出来了,怎么能让它更新预览显示的完整预览呢?:

    enter image description here

    java.lang.UnsupportedOperationException
        at android.content.res.Resources_Delegate.obtainTypedArray(Resources_Delegate.java:531)
        at android.content.res.Resources.obtainTypedArray(Resources.java:615)
        at android.widget.TextView.<init>(TextView.java:1386)
        at android.widget.Button.<init>(Button.java:166)
        at android.widget.Button.<init>(Button.java:141)
        at android.support.v7.widget.AppCompatButton.<init>(AppCompatButton.java:70)
        at android.support.v7.widget.AppCompatButton.<init>(AppCompatButton.java:66)
        at sun.reflect.GeneratedConstructorAccessor925.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:481)
        at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:264)
        at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:222)
        at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:209)
        at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:337)
        at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:348)
        at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:248)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
        at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:863)
        at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:837)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
        at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:866)
        at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:837)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
        at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:866)
        at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:837)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
        at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:866)
        at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:837)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
        at android.view.LayoutInflater_Delegate.parseInclude(LayoutInflater_Delegate.java:204)
        at android.view.LayoutInflater.parseInclude(LayoutInflater.java:900)
        at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:859)
        at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:837)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
        at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:866)
        at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:837)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
        at 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)
        at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:384)
        at com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:193)
        at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:544)
        at com.android.tools.idea.rendering.RenderTask.lambda$inflate$3(RenderTask.java:678)
        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)
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   user10053723 user10053723    6 年前

    我猜他在@style/buttons中缺少n个layout_height属性