Как решить проблему рендеринга Path.op () не поддерживается? - PullRequest
13 голосов
/ 19 января 2020

Как решить эту ошибку: проблема с рендерингом. Path.op () не поддерживается

Я пытался принудительно обновить sh макет, перезапустить, обновить Android Studio, на некоторое время остановить антивирус, но проблема все еще существует.

Удивительно, но я могу скомпилировать и запустить приложение, но как избавиться от этой ошибки?

Я использую:

  • Android Studio 3.5.3
  • Android SDK Tools 29.0.2
  • Android SDK Platform Android 10.0 (Q) Android SDK Platform 29
  • Двоичный файл OpenJDK Platform

для воспроизведения ошибки:

  • Создать новый Android проект с пустым действием
  • заменить макет на следующая схема:

    <?xml version="1.0" encoding="utf-8"?>    <androidx.coordinatorlayout.widget.CoordinatorLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/parent_view"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity"
        android:background="@android:color/white">
    
    
        <com.google.android.material.appbar.AppBarLayout
            android:id="@+id/appbar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    
            <include layout="@layout/toolbar" />
    
        </com.google.android.material.appbar.AppBarLayout>
    
        <androidx.core.widget.NestedScrollView
            android:id="@+id/nested_scroll_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:clipToPadding="false"
            android:scrollbars="none"
            android:scrollingCache="true"
            app:layout_behavior="@string/appbar_scrolling_view_behavior">
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">
    
                <androidx.cardview.widget.CardView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    app:cardCornerRadius="0dp"
                    app:cardElevation="2dp">
    
                    <RelativeLayout
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content">
    
                        <androidx.viewpager.widget.ViewPager
                            android:id="@+id/pager"
                            android:layout_width="match_parent"
                            android:layout_height="250dp"
                            android:layout_alignParentLeft="true"
                            android:layout_alignParentStart="true"
                            android:layout_alignParentTop="true"
                            android:background="@android:color/darker_gray" />
    
                        <RelativeLayout
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_alignParentBottom="true"
                            android:layout_centerHorizontal="true"
                            android:orientation="vertical"
                            android:paddingBottom="16dp"
                            android:paddingLeft="12dp"
                            android:paddingRight="12dp"
                            android:paddingTop="14dp">
    
                            <LinearLayout
                                android:layout_width="match_parent"
                                android:layout_height="wrap_content"
                                android:orientation="vertical">
    
                                <TextView
                                    android:id="@+id/title"
                                    android:layout_width="wrap_content"
                                    android:layout_height="wrap_content"
                                    android:text="Title is going here"
                                    android:textAppearance="@style/TextAppearance.AppCompat.Medium"
                                    android:textColor="@android:color/white" />
    
    
    
    
    
                                <TextView
                                    android:id="@+id/brief"
                                    android:layout_width="wrap_content"
                                    android:layout_height="wrap_content"
                                    android:text=" Location"
                                    android:textAppearance="@style/TextAppearance.AppCompat.Small"  />
    
    
                            </LinearLayout>
    
                            <LinearLayout
                                android:id="@+id/layout_dots"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_alignParentBottom="true"
                                android:layout_alignParentEnd="true"
                                android:layout_alignParentRight="true"
                                android:layout_gravity="end"
                                android:gravity="center"
                                android:orientation="horizontal" />
    
    
                        </RelativeLayout>
    
                    </RelativeLayout>
    
                </androidx.cardview.widget.CardView>
    
                <View
                    android:layout_width="0dp"
                    android:layout_height="16dp" />
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_margin="16dp"
                    android:orientation="vertical">
    
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Description"
                        android:textAppearance="@style/TextAppearance.AppCompat.Large"
                        android:textColor="@android:color/darker_gray" />
    
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="6dp"
                        android:lineSpacingExtra="4dp"
                        android:text="very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum very_long_lorem_ipsum "
                        android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
                        android:textColor="@android:color/darker_gray"/>
    
    
                </LinearLayout>
    
                <View
                    android:layout_width="0dp"
                    android:layout_height="8dp" />
    
    
            </LinearLayout>
    
        </androidx.core.widget.NestedScrollView>
    

enter image description here

Ответы [ 8 ]

19 голосов
/ 26 января 2020

Я столкнулся с той же проблемой. Причина в том, что новые версии Материальных Компонентов связаны с этой ошибкой. Итак, я попытался заменить версию в скрипте сборки Gradle версией, которая поддерживает Path.op().

Итак, единственное, что вам нужно сделать, это заменить зависимость в вашем скрипте сборки Gradle на эту один:

реализация 'com.google. android .материал: материал: 1.2.0-alpha02'

10 голосов
/ 23 февраля 2020

Проблема решена путем замены реализации компонента материала в Gradle Build (на уровне приложения)

com.google.android.material:material:1.2.0-alpha05

на

com.google.android.material:material:1.2.0-alpha02
2 голосов
/ 30 апреля 2020

Немного поздно, но

implementation 'com.google.android.material:material:1.2.0-alpha06'

работает правильно, поэтому нет необходимости понижать рейтинг до alpha02.

1 голос
/ 31 января 2020

Я столкнулся с той же проблемой. Проблема улучшилась, когда я запускаю приложение. Я думаю, что проблема будет улучшена, когда вы очистите и перестроите свой проект.

0 голосов
/ 06 мая 2020

любой, кто сталкивается с этой проблемой, просто понизит или улучшит вашу зависимость от дизайна материала до

 implementation 'com.google.android.material:material:1.2.0-alpha02'

, кажется более стабильным с точки зрения рендеринга, особенно если вы используете android studio V3.4 и выше. Я иногда скучаю по затмению

0 голосов
/ 28 апреля 2020

Заменить

fileTree реализации (dir: 'libs', include: ['* .jar'])

api 'com.google.android.material:material:1.2.0-alpha06'

на

реализация fileTree (dir: 'libs', включая: ['* .jar'])

api 'com.google.android.material:material:1.2.0-alpha02'
0 голосов
/ 09 февраля 2020

столкнулся с той же проблемой при использовании чипа, он не виден в редакторе макета. разрешил его, изменив

implementation 'com.google.android.material:material:1.2.0-alpha03'

на

implementation 'com.google.android.material:material:1.2.0-alpha02'
0 голосов
/ 21 января 2020

Я столкнулся с той же проблемой вчера. Мой имеет отношение к

com.google. android .material.appbar.AppBarLayout

. Я не знаю точно, почему, но добавление android:background="..." решает это.

...