操作栏渲染问题

时间:2018-07-11 10:27:06

标签: android android-layout android-actionbar android-actionbar-compat

我是Android Studio的新手。我的操作栏在设计面板中消失了。基本上没有在设计视图上呈现任何内容。没有操作栏没有textView什么都没有。然后我读到我应该将主题切换为其他主题,并且该方法可行,但我想保留正常的主题。 API更改没有做任何事情。 起作用的是: 将build.gradle中的appcompat行更改为

implementation 'com.android.support:appcompat-v7:26.0.0-beta1'

直到今天它一直像魅力一样开始工作。我正在学习片段的工作原理,所以我制作了两个空白片段,渲染问题再次出现。只是为了检查它不是不是很不幸: 我做了一个新项目。 问题在那里。 更改了build.gradle文件。 问题消失了。 向项目中添加了2个空白片段(带有xml)。 问题又来了。

现在请告诉您我所做的一切对我不起作用:

  • 更新了android studio
  • build.gradle应用程序代码更改
  • 主题更改(可以,但是我要应用主题)
  • 更改API
  • 更改style.xml(在设计视图中带回textView,但在操作栏上不带)

android studio screenshot image link

请帮助。以下是堆栈:

java.lang.ClassNotFoundException: android.view.View$OnUnhandledKeyEventListener
    at org.jetbrains.android.uipreview.ModuleClassLoader.load(ModuleClassLoader.java:180)
    at com.android.tools.idea.rendering.RenderClassLoader.findClass(RenderClassLoader.java:61)
    at org.jetbrains.android.uipreview.ModuleClassLoader.findClass(ModuleClassLoader.java:118)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at org.jetbrains.android.uipreview.ModuleClassLoader.loadClass(ModuleClassLoader.java:213)
    at android.support.v7.widget.ActionBarContainer.<init>(ActionBarContainer.java:64)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    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.inflate(LayoutInflater.java:515)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
    at com.android.layoutlib.bridge.bars.BridgeActionBar.<init>(BridgeActionBar.java:89)
    at com.android.layoutlib.bridge.bars.AppCompatActionBar.<init>(AppCompatActionBar.java:68)
    at com.android.layoutlib.bridge.impl.Layout.createActionBar(Layout.java:277)
    at com.android.layoutlib.bridge.impl.Layout.<init>(Layout.java:161)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:288)
    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 个答案:

答案 0 :(得分:0)

尝试使用更稳定的支持库版本,看看问题是否消失了?

Here 中对版本26的修订为:26.1.0、26.0.2、26.0.1