【问题标题】:Element LinearLayout is not allowed in CardViewCardView 中不允许元素 LinearLayout
【发布时间】:2015-11-12 13:39:23
【问题描述】:

注意:请在将其标记为重复之前阅读问题!我已经提到过类似的问题并没有解决我的问题。


我正在为我的布局 xml 使用 android.support.v7.widget.CardView。但是,当我在 CardView 中放置 LinearLayout 时,Android Studio 会给我以下错误“Element LinearLayout is not allowed here”。

事实上,ANY 类型的小部件(如 TextView)会导致此错误,我尝试了来自 LinearLayout flagged if used in CardView 链接的解决方案,即重启 Android Studio。但它没有用。下面是我的xml代码:

<?xml version="1.0" encoding="utf-8"?>

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <LinearLayout>

    </LinearLayout>

</android.support.v7.widget.CardView>

我还会发截图!

可能是什么问题?

【问题讨论】:

  • 我已经在问题中提到我已经查看了该链接,但它并没有解决我的问题。
  • 当我将链接标记为重复时,您没有提到该链接。似乎有一个未解决的问题:code.google.com/p/android/issues/detail?id=81362,您使用的是哪个 Android Studio 版本?
  • 我确实提到了链接,只是我实际上并没有将其命名为“如果在 CardView 中使用,则标记为 LinearLayout”。我使用的是 1.5 RC 1,但在此版本之前发生了同样的事情。
  • 感谢您的建议,当我按照您的建议进行操作时,我发现 AS 无法编译 CardView 小部件,因为未添加正确的依赖项。我必须在我的 gradle 文件中添加 compile 'com.android.support:cardview-v7:23.1.0'

标签: android layout android-cardview


【解决方案1】:

所以,建议集合,只是为了确定:

  • 重启AS
  • 使缓存无效并重新启动
  • 检查是否添加了正确的依赖项
  • 清理和重建项目
  • 在另一个文件/项目中尝试相同的代码
  • 正在尝试查找项目的备份
  • 可能是电脑重启

【讨论】:

    【解决方案2】:

    只需将android.support.v7.widget.CardView 替换为androidx.cardview.widget.CardView

    【讨论】:

      【解决方案3】:

      检查是否为 CardView 正确添加了 Gradle 依赖项。

      在 build.gradle 中

      implementation 'com.android.support:cardview-v7:28.0.0'
      

      然后在 XML 中

      <androidx.cardview.widget.CardView
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:layout_margin="10dp"
              android:background="#fff"
              app:cardCornerRadius="2dp"
              android:elevation="2dp">
      
          <TextView android:layout_width="match_parent"
                 android:layout_height="wrap_content" android:id="@+id/textView" />
      
      </androidx.cardview.widget.CardView>
      

      【讨论】:

        【解决方案4】:

        确保您没有对卡片视图进行相互约束(魔术棒),因为它会向卡片视图添加约束并阻止任何线性布局。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-07-31
          • 1970-01-01
          • 2011-05-08
          • 1970-01-01
          相关资源
          最近更新 更多