«Что-то пошло не так» при открытии макета в режиме дизайна - PullRequest
0 голосов
/ 20 мая 2018

Я очень новая разработка для Android.Я использую Visual Studio 2017 и Xamarin.Я сталкиваюсь с проблемой при открытии activity_main.axml в конструкторе.Я могу отладить приложение в эмуляторе, эта ошибка возникает только в режиме разработки.

Журнал ошибок:

Включен косвенный рендеринг Создание LibraryClassLoader в пути теневого копирования C:\ Users \ Dell \ AppData \ Local \ Temp \ AndroidDesignerJars4571381395840691254 Установка идентификатора 2 для вновь созданного ClassLoader

Попытка загрузки класса android.support.design.widget.CoordinatorLayout

Исключительная ситуация при загрузке элемента управленияandroid.support.design.widget.CoordinatorLayout java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (родной метод) в sun.reflect.NativeConstructorAccessorImpl.nl.newInstance (DelegatingConstructorAccessorImpl.java:45) в java.lang.reflect.Constructor.newInstance (Constructor.java:423) в mono.android.SessionProjectCallback.instantiateClass (SessionProjectCallback.java:404) в mono.android.SonrojectCallback.loadView (SessionProjectCallback.java:204) в android.view.BridgeInflater.loadCustomView (BridgeInflater.java:337) в android.view.BridgeInflater.loadCustomView (BridgeInflater.java:348) в android.view.BridgeInflater.createViewFflaag (.java: 248) в android.view.LayoutInflater.createViewFromTag (LayoutInflater.java:730) в android.view.LayoutInflater.inflate (LayoutInflater.java:492) в android.view.LayoutInflater.inflate (LayoutInflater.java:39на 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) в mono.android.DesignerSession.processMessage (DesignerSession.java:657) в mono.android.MessageMessage.MessageListener.java:88) at mono.android.MessageListener $ Runner.run (MessageListener.java:44)at 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..java: 200) ... еще 20

Попытка загрузки класса android.support.design.widget.AppBarLayout

Возникла исключительная ситуация при загрузке элемента управления android.support.design.widget.AppBarLayoutjava.lang.reflect.java.lang.reflect.Constructor.newInstance (Constructor.java:423) в mono.android.SessionProjectCallback.instantiateClass (SessionProjectCallback.java:404) в mono.android.SessionProjectCallback.loadView (SessionProjectCallback.java:20).,BridgeInflater.loadCustomView (BridgeInflater.java:337) в android.view.BridgeInflater.loadCustomView (BridgeInflater.java:348) в android.view.BridgeInflater.createViewFromTag (BridgeInflater.java:248) в android.view.LayoutInflater.TreateView.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) на android.view.LayoutInflater.rInflateChildren (LayoutInflater.java:824) на android.view.LayoutInflater.inflate (LayoutInflater.java:515) на androidLayoutInflater.inflate (LayoutInflater.java:394) на 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) в mono.android.DesignerSession.processMessage (DesignerSession.java7)) в mono.android.MessageListener.executeMessage (MessageListener.java:88) в 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] Не удалось найти стиль 'toolbarStyle' в текущей теме. Bridge [resources.resolve.theme] Не удалось найти стиль 'toolbarStyle'в текущей теме Bridge [resources.resolve.theme] Не удалось найти стиль 'toolbarStyle' в текущей теме Bridge [resources.format] Необходимо указать атрибут layout_height.Не удалось обработать сообщение. Загрузите mono.android.DesignerException: java.lang.NullPointerException в mono.android.DesignerException.fromThrowable (DesignerException.java:46) в mono.android.DesignerSession.checkRenderResultForError (DesignerSession.java:and7 mon at).DesignerSession.load (DesignerSession.java:296) в mono.android.DesignerSession.processMessage (DesignerSession.java:657) в mono.android.MessageListener.executeMessage (MessageListener.java:88) в mono.android.MessageListener $Выполнить (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.

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

Ну, для меня у меня была последняя версия, то есть я перешел к «Проверить наличие обновлений» и получил следующее:

enter image description here Все, что у меня былоЧтобы сделать это, нажмите «Очистить», «Перестроить», «Построить» следующим образом enter image description here, и я был готов пойти.Надеюсь, что это может помочь кому-то, кто работает с той же ошибкой и имеет самую последнюю версию Visual Studio.

0 голосов
/ 22 сентября 2018

Надеюсь, что это поможет кому-то вроде меня, потратив часы на поиск и пробуя разные вещи, моя проблема заключалась в том, что я не закрывал тег XML, но VS не смог сказать мне об этом, вместо этого я увидел Indirect rendering enabled и java.lang.ClassCastException

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...