【问题标题】:Cardview is missing on some devices某些设备上缺少 Cardview
【发布时间】:2016-12-20 12:56:39
【问题描述】:

我正确创建了两个cardview,但是当我在我的电话卡视图上运行时,活动是正确的,但是当在其他电话卡视图中运行时,请帮我解决这个问题

Screenshot

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.nima.ts.MainActivity">

    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card_view"
        android:layout_gravity="center"
        android:layout_width="200dp"
        android:layout_height="200dp"
        card_view:cardCornerRadius="4dp"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_marginRight="135dp"
        android:layout_marginEnd="135dp">

    </android.support.v7.widget.CardView>
    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card"
        android:layout_gravity="center"
        android:layout_width="200dp"
        android:layout_height="200dp"
        card_view:cardCornerRadius="4dp"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginLeft="119dp"
        android:layout_marginStart="119dp">

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

</RelativeLayout>

【问题讨论】:

  • 您需要共享您的布局文件。
  • 请分享CardView所在的xml代码。
  • 您需要详细解释您的问题...您正在构建什么(几个活动、片段等),预期结果是什么以及问题是什么...

标签: android xml android-studio android-activity cardview


【解决方案1】:

您已并排添加了两个CardViews。根据您的代码,两者都是layout_alignParentTop="true",这意味着当有足够的水平空间可用时,两者都会尝试粘在父RelativeLayout 的顶部。但是,这不会发生在您的任何设备上,这就是为什么它们会显示在另一个之下。

请将您的代码替换为以下内容:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.nima.ts.MainActivity">

    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card_view"
        android:layout_gravity="center"
        android:layout_width="200dp"
        android:layout_height="200dp"
        card_view:cardCornerRadius="4dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true" />

    <android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card"
        android:layout_gravity="center"
        android:layout_width="200dp"
        android:layout_height="200dp"
        card_view:cardCornerRadius="4dp"
        android:layout_below="@id/card_view"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

</RelativeLayout>

【讨论】:

  • 我们可以去掉android:layout_gravity="center"...如果要影响视图重力,我们可以使用android:gravity="center"
猜你喜欢
  • 2013-01-28
  • 2012-03-23
  • 1970-01-01
  • 1970-01-01
  • 2013-02-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多