从ConstraintLayout切换到MotionLayout时,出现以下错误。我试过重建这个项目,但没有用。错误是无法使用运动布局
布局代码:
<androidx.constraintlayout.motion.widget.MotionLayout 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:id="@+id/fragment_death_motion_layout"
android:layout_width="match_parent"
android:layout_height="300dp"
android:layout_gravity="center"
android:layout_marginHorizontal="16dp"
android:background="@drawable/black_gray_gradient"
android:visibility="visible"
app:layoutDescription="@xml/dialog_fragment_death_scene"
tools:context=".ui.DeathDialogFragment">
<TextView
android:id="@+id/game_over_text_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="32dp"
android:layout_marginEnd="16dp"
android:text="@string/game_over"
android:textAppearance="@style/TextAppearance.AppCompat.Display1"
android:textColor="@android:color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.496"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/score_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:text="666"
android:textAppearance="@style/TextAppearance.AppCompat.Display3"
android:textColor="@android:color/white"
app:layout_constraintEnd_toEndOf="@+id/game_over_text_tv"
app:layout_constraintStart_toStartOf="@+id/game_over_text_tv"
app:layout_constraintTop_toBottomOf="@+id/game_over_text_tv" /
</androidx.constraintlayout.motion.widget.MotionLayout>
4条答案
按热度按时间qjp7pelc1#
您可以关闭布局文件的选项卡并重新打开它。
qyuhtwio2#
每当我通过手动编辑XML将约束布局更改为运动布局时,都会出现此错误。
然而,重新启动Android Studio已经为我解决了这个问题。
编辑:剪切和粘贴
app:layoutDescription
属性似乎也可以解决这个问题,如果它在你让它工作后重复:app:layoutDescription="@xml/dialog_fragment_death_scene"
yfjy0ee73#
无效缓存和重新启动帮助我
5vf7fwbs4#
确保<MotionScene...>xml文件与布局xml文件位于同一模块中