标签: android-cardview

ScrollView中的RecyclerView无法正常工作

我正在尝试在相同的布局中实现包含RecyclerView和ScrollView的布局.

布局模板:

<RelativeLayout>
    <ScrollView android:id="@+id/myScrollView">
       <unrelated data>...</unrealated data>

           <android.support.v7.widget.RecyclerView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/my_recycler_view"
            />
    </ScrollView>


</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

问题:我可以滚动直到最后一个元素 ScrollView

我试过的事情:

  1. 里面的卡片视图ScrollView(现在ScrollView包含RecyclerView) - 可以看到卡片直到RecyclerView
  2. 最初的想法是实现这个viewGroup,RecyclerView而不是ScrollView其中一个视图类型是,CardView但我得到了与完全相同的结果ScrollView

android android-layout android-scrollview android-cardview android-recyclerview

240
推荐指数
13
解决办法
17万
查看次数

Android Lollipop CardView上的涟漪效应

我试图让CardView时,通过设置在Android触摸显示连锁反应:所描述的行为在XML文件中backgound属性这里 Android开发者页面上,但它不工作.根本没有动画,但是调用onClick中的方法.我也尝试过按照这里的建议创建一个ripple.xml文件,但结果相同.

CardView出现在活动的XML文件中:

<android.support.v7.widget.CardView
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="155dp"
    android:layout_height="230dp"
    android:elevation="4dp"
    android:translationZ="5dp"
    android:clickable="true"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:onClick="showNotices"
    android:background="?android:attr/selectableItemBackground"
    android:id="@+id/notices_card"
    card_view:cardCornerRadius="2dp">

</android.support.v7.widget.CardView> 
Run Code Online (Sandbox Code Playgroud)

我对android开发比较陌生,所以我可能会犯一些明显的错误.
提前致谢.

android android-layout android-cardview android-5.0-lollipop

164
推荐指数
8
解决办法
10万
查看次数

CardView layout_width ="match_parent"与父级RecyclerView宽度不匹配

我有一个包含RecyclerView的片段,其layout_width ="match_parent":

<android.support.v7.widget.RecyclerView 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:layout_gravity="center"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context=".MainActivity$PlaceholderFragment" />
Run Code Online (Sandbox Code Playgroud)

RecyclerView中的项目是CardView,其layout_width ="match_parent":

<android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card_view"
    android:layout_gravity="center"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="20dp"
    card_view:cardCornerRadius="4dp">

    <TextView
        android:layout_gravity="center"
        android:id="@+id/info_text"
        android:layout_width="match_parent"
        android:gravity="center"
        android:layout_height="match_parent"
        android:textAppearance="?android:textAppearanceLarge"/>
</android.support.v7.widget.CardView>
Run Code Online (Sandbox Code Playgroud)

我将物品视图膨胀如下:

public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
                                                   int viewType) {
        CardView v = (CardView) LayoutInflater.from(parent.getContext())
                .inflate(R.layout.card_listitem, null, true);

        ViewHolder vh = new ViewHolder(v);
        return vh;
    }
Run Code Online (Sandbox Code Playgroud)

但是当我运行应用程序时,CardView呈现为wrap_content,如下所示:

CardsBug

请注意,这是在模拟器上运行,而不是在真实设备上运行.

我做错了什么,还是一个错误?

android android-layout android-cardview android-5.0-lollipop android-recyclerview

118
推荐指数
5
解决办法
6万
查看次数

以编程方式更改CardView的背景颜色

所述CardView具有属性card_view:cardBackgroundColor来定义的背景颜色.这个属性工作正常.

同时,没有一种动态改变颜色的方法.

我刚刚尝试过以下解决方案:

mCardView.setBackgroundColor(...);
Run Code Online (Sandbox Code Playgroud)

或使用cardView内的布局

   <android.support.v7.widget.CardView>
        <LinearLayout
            android:id="@+id/inside_layout">
    </android.support.v7.widget.CardView>  

 View insideLayout = mCardView.findViewById(R.id.inside_layout);
 cardLayout.setBackgroundColor(XXXX);
Run Code Online (Sandbox Code Playgroud)

这些解决方案不起作用,因为该卡具有cardCornerRadius.

android android-cardview android-5.0-lollipop

114
推荐指数
9
解决办法
12万
查看次数

CardView在Android L中没有显示Shadow

Listview中的我的Cardview没有在Android L(Nexus 5)中显示阴影.圆形边缘也未正确显示.以下是Listview的适配器视图的代码:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:app="http://schemas.android.com/apk/res/com.example.myapp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<android.support.v7.widget.CardView
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardBackgroundColor="@android:color/white"
    android:foreground="?android:attr/selectableItemBackground"
    app:cardCornerRadius="4dp"
    app:cardElevation="4dp" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingTop="@dimen/activity_vertical_margin" >

        <TextView
            android:id="@+id/tvName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_marginTop="@dimen/padding_small"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <ImageView
            android:id="@+id/ivPicture"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/tvName"
            android:layout_centerHorizontal="true"
            android:scaleType="fitCenter" />

        <TextView
            android:id="@+id/tvDetail"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/ivPicture"
            android:layout_centerHorizontal="true"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin" />
    </RelativeLayout>
</android.support.v7.widget.CardView>
Run Code Online (Sandbox Code Playgroud)

和ListView xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res/com.example.myapp"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/app_bg" >

<ListView
    android:id="@android:id/list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentTop="true"
    android:cacheColorHint="#00000000"
    android:divider="@android:color/transparent"
    android:drawSelectorOnTop="true"
    android:smoothScrollbar="true" /> …
Run Code Online (Sandbox Code Playgroud)

android android-listview material-design android-cardview android-5.0-lollipop

112
推荐指数
12
解决办法
11万
查看次数

CardView背景颜色总是白色

我正在使用RecyclerView和GridLayoutManager,我将每个项目都作为CardView.

不幸的是,这里的CardView似乎没有改变它的背景颜色.我尝试了布局和编程方式,但我似乎没有尝试过什么似乎工作.

我一直在苦苦挣扎.如果有人可以帮我解决这个问题,我感激不尽.

android android-cardview android-recyclerview

109
推荐指数
4
解决办法
7万
查看次数

在Android 5.0上的AppCompat CardView上设置XML高程

根据我的理解,在预览阶段的早期,似乎没有办法只在CardView没有Java的黑客攻击的情况下在XML中设置高程.既然官方发布已经发布,有没有办法在XML中执行此操作而无需编写Java代码来设置高程?

我试过card_view:cardElevation没有效果.我曾经想过当我使用5.0的模拟器时一切都很好.但是现在我在我的实际设备上使用正式版本,我的所有内容都CardView消失了

Pre Lollipop,效果很好.

这是我的完整xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:id="@+id/cv1"
    card_view:cardElevation="4dp"
    android:layout_margin="6dp"
    card_view:cardCornerRadius="3dp"
    android:layout_height="match_parent">
Run Code Online (Sandbox Code Playgroud)

android android-appcompat android-cardview android-elevation

92
推荐指数
3
解决办法
8万
查看次数

CardView Corner Radius

有没有办法让CardView只在顶部有一个圆角半径?

<android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardCornerRadius="10dp"
    >
Run Code Online (Sandbox Code Playgroud)

android android-appcompat android-cardview

80
推荐指数
7
解决办法
14万
查看次数

为什么Lollipop上的CardViews之间没有空间?

我尝试使用它CardView并且它在5.0以下工作得很好,但在棒棒糖上看起来很奇怪.

在此输入图像描述

在此输入图像描述

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">

<android.support.v7.widget.CardView android:layout_width="match_parent"
    android:layout_height="200dp">
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="card1"
        android:textAppearance="?android:attr/textAppearanceLarge" />
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView android:layout_width="match_parent"
    android:layout_height="200dp">

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="card2"
        android:textAppearance="?android:attr/textAppearanceLarge" />
</android.support.v7.widget.CardView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我在使用时会遇到同样的问题RecyclerView,如果它在Lollipop上运行,我是否需要添加一些东西?

android android-cardview

79
推荐指数
4
解决办法
4万
查看次数

CardView上的透明背景 - Android

我想在CardView上做透明的背景.我知道backgroundColor,但我的布局上有图像.

你知道怎么做吗?或者作为cardview的东西,但我会设置一个透明的背景?

问候

android background android-cardview

69
推荐指数
3
解决办法
5万
查看次数