安卓资源链接失败 - 安卓 Studio

4

我构建了我的项目,并且没有出现错误,但是当我尝试在我的设备上运行它时,它会抛出这个错误。

C:\Users\FAISAL NAZIR\.gradle\caches\transforms-2\files-2.1\eaf17b24d60dc773c7680b20ac141638\material-1.1.0\res\layout\mtrl_calendar_month_navigation.xml:32: AAPT: error: 'textEnd' is incompatible with attribute iconGravity (attr) flags [start=1, textStart=2] [weak].

这是一个XML文件,其中显示了错误,最糟糕的是,该文件是自动生成的,因此我无法编辑或操纵它。

<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2019 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  android:id="@+id/month_navigation_bar"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:paddingTop="@dimen/mtrl_calendar_navigation_top_padding"
  android:paddingBottom="@dimen/mtrl_calendar_navigation_bottom_padding"
  android:orientation="horizontal">

  <FrameLayout
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1">

    <com.google.android.material.button.MaterialButton
      android:id="@+id/month_navigation_fragment_toggle"
      android:layout_width="wrap_content"
      android:layout_height="@dimen/mtrl_calendar_navigation_height"
      android:layout_gravity="start"
      android:gravity="center_vertical|start"
      android:insetBottom="0dp"
      android:insetTop="0dp"
      app:icon="@drawable/ic_menu_arrow_down_black_24dp"
      app:iconGravity="textEnd"
      app:iconPadding="4dp"/>

  </FrameLayout>

  <com.google.android.material.button.MaterialButton
    android:id="@+id/month_navigation_previous"
    android:layout_width="@dimen/mtrl_min_touch_target_size"
    android:layout_height="@dimen/mtrl_calendar_navigation_height"
    android:contentDescription="@string/mtrl_picker_a11y_prev_month"
    android:gravity="center"
    android:insetBottom="0dp"
    android:insetTop="0dp"
    app:icon="@drawable/ic_keyboard_arrow_left_black_24dp"/>

  <com.google.android.material.button.MaterialButton
    android:id="@+id/month_navigation_next"
    android:layout_width="@dimen/mtrl_min_touch_target_size"
    android:layout_height="@dimen/mtrl_calendar_navigation_height"
    android:contentDescription="@string/mtrl_picker_a11y_next_month"
    android:gravity="center"
    android:insetBottom="0dp"
    android:insetTop="0dp"
    app:icon="@drawable/ic_keyboard_arrow_right_black_24dp"/>

</LinearLayout>

我已经尝试多次重新构建项目,也重新启动了Android Studio,并且无效化缓存并重新启动了应用,但是没有发生任何变化。


我们在更新android.material后遇到了相同的问题。你找到解决办法了吗? - Thomas Andersen
你找到解决方案了吗? - Jithish P N
3个回答

1

尝试升级到1.2.1-rc1,但错误仍存在。将NuGet降级至1.0.0.1后,它可以正常工作。


0

看起来这是包之间的冲突。在我的情况下,我不得不将以下包降级到以下版本:

  • Xamarin.AndroidX.Core1.6.0.3(当前最新版本为1.6.0.4)
  • Xamarin.AndroidX.Activity1.3.1.2(当前最新版本为1.3.1.3)

清理项目并删除bin/obj文件夹以获得新的构建,并尝试构建。如果失败,请尝试再次构建(无需清理)。 以上是我经过数小时头痛后找到的解决方案。我希望它能帮助许多面临类似问题的开发人员。

如果您仍然有问题,请执行以下操作: 如果您安装了Xamarin.Android.Support.V4,请卸载它并使用以下包的最新版本代替:

  • Xamarin.Android.Support.Compat
  • Xamarin.Android.Support.Core.UI
  • Xamarin.Android.Support.Core.Utils
  • Xamarin.Android.Support.CustomTabs
  • Xamarin.Android.Support.Design
  • Xamarin.Android.Support.Fragment
  • Xamarin.AndroidX.Legacy.Support.Core.UI

在你的代码中使用AndroidX而不是Support库。

以上是我在项目中使用的,可能会帮助你解决许多人的冲突问题。


0

错误:'textEnd'与属性iconGravity不兼容

使用com.google.android.material:material:1.1.0进行材料设计组件开发,

因为从1.1.0-alpha06开始支持,如果你使用的版本低于1.1.0-alpha06,将无法工作。请参阅releases


我正在使用 'com.google.android.material:material:1.1.0'。 - Faisal Nazir

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接