"出错的事情"在设计模式下打开布局

时间:2018-05-20 08:46:48

标签: android xamarin visual-studio-2017

我是一个非常新的android开发。我使用的是Visual Studio 2017和Xamarin。我在设计师中打开activity_main.axml时遇到了问题。我能够在模拟器中调试应用程序,此错误仅在设计模式下抛出。

错误日志:

  

启用间接渲染在卷影副本中创建LibraryClassLoader   路径   C:\用户\戴尔\应用程序数据\本地的\ Temp \ AndroidDesignerJars4571381395840691254   在新创建的ClassLoader上设置id 2

     

尝试加载类android.support.design.widget.CoordinatorLayout

     

加载控件时发生异常   android.support.design.widget.CoordinatorLayout   java.lang.reflect.InvocationTargetException 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)     在   mono.android.SessionProjectCallback.instantiateClass(SessionProjectCallback.java:404)     在   mono.android.SessionProjectCallback.loadView(SessionProjectCallback.java:204)     在   android.view.BridgeInflater.loadCustomView(BridgeInflater.java:337)     在   android.view.BridgeInflater.loadCustomView(BridgeInflater.java:348)     在   android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:248)     在   android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)     在android.view.LayoutInflater.inflate(LayoutInflater.java:492)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:270)     在mono.android.DesignerSession.load(DesignerSession.java:289)at   mono.android.DesignerSession.processMessage(DesignerSession.java:657)     在   mono.android.MessageListener.executeMessage(MessageListener.java:88)     at mono.android.MessageListener $ Runner.run(MessageListener.java:44)     在java.lang.Thread.run(Thread.java:748)引起:   java.lang.IllegalArgumentException:您需要使用Theme.AppCompat   主题(或后代)与设计库。在   android.support.design.widget.ThemeUtils.checkAppCompatTheme(ThemeUtils.java:33)     在   android.support.design.widget.CoordinatorLayout。(CoordinatorLayout.java:206)     在   android.support.design.widget.CoordinatorLayout。(CoordinatorLayout.java:200)     ......还有20个

     

尝试加载类android.support.design.widget.AppBarLayout

     

加载控件时发生异常   android.support.design.widget.AppBarLayout   java.lang.reflect.InvocationTargetException 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)     在   mono.android.SessionProjectCallback.instantiateClass(SessionProjectCallback.java:404)     在   mono.android.SessionProjectCallback.loadView(SessionProjectCallback.java:204)     在   android.view.BridgeInflater.loadCustomView(BridgeInflater.java:337)     在   android.view.BridgeInflater.loadCustomView(BridgeInflater.java:348)     在   android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:248)     在   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:270)     在mono.android.DesignerSession.load(DesignerSession.java:289)at   mono.android.DesignerSession.processMessage(DesignerSession.java:657)     在   mono.android.MessageListener.executeMessage(MessageListener.java:88)     at mono.android.MessageListener $ Runner.run(MessageListener.java:44)     在java.lang.Thread.run(Thread.java:748)引起:   java.lang.IllegalArgumentException:您需要使用Theme.AppCompat   主题(或后代)与设计库。在   android.support.design.widget.ThemeUtils.checkAppCompatTheme(ThemeUtils.java:33)     在   android.support.design.widget.AppBarLayout。(AppBarLayout.java:158)     ......还有24个

     

尝试加载类android.support.v7.widget.Toolbar

     

Bridge [resources.resolve.theme]无法找到样式工具栏样式'   在当前主题Bridge [resources.resolve.theme]找不到样式   ' toolbarStyle'在当前主题Bridge [resources.resolve.theme]   无法找到样式工具栏样式'在当前主题桥   [resources.format]您必须提供layout_height属性。失败   处理消息加载mono.android.DesignerException:   java.lang.NullPointerException at   mono.android.DesignerException.fromThrowable(DesignerException.java:46)     在   mono.android.DesignerSession.checkRenderResultForError(DesignerSession.java:217)     在mono.android.DesignerSession.load(DesignerSession.java:296)at   mono.android.DesignerSession.processMessage(DesignerSession.java:657)     在   mono.android.MessageListener.executeMessage(MessageListener.java:88)     at mono.android.MessageListener $ Runner.run(MessageListener.java:44)     在java.lang.Thread.run(Thread.java:748)引起:   显示java.lang.NullPointerException

activity_main.axml

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme">
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />
    </android.support.design.widget.AppBarLayout>
    <include
        layout="@layout/content_main" />
    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="@dimen/fab_margin"
        app:srcCompat="@android:drawable/ic_dialog_email" />
</android.support.design.widget.CoordinatorLayout>

截图

Screenshot of visual studio. As you can see nothing is rendered at all.

3 个答案:

答案 0 :(得分:1)

我希望这对像我这样的人有帮助,在花了数小时进行搜索和尝试其他操作之后,我的问题是我没有关闭XML标签,但是VS无法告诉我,所以我看到了Indirect rendering enabled和{ {1}}

答案 1 :(得分:0)

好吧,对我而言,我拥有最新版本,即,我已导航至“检查更新”并获得了以下内容:

enter image description here 我所要做的就是按如下所示依次单击“清理”,“重建”,“构建” enter image description here 我很高兴去。 希望这可以帮助运行相同错误并具有Visual Studio最新版本的人。

答案 2 :(得分:0)

我遇到以下错误:

启用间接渲染 无法处理消息加载

我经过设计检查,发现我创建了一个包含三行三列的表格布局。在第三行中,我仅放置了一个文本视图。

我通过放置三个不同的表解决了该错误。第一表包含三列,第二表包含两列,第三表包含两列。