android – CardView填充和圆角

我试图在我的卡片视图中添加圆角和填充,当我有内容填充时,角半径似乎不起作用.

这是我目前的XML

<android.support.v7.widget.CardView
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/cardView"
    android:layout_width="71dp"
    android:layout_height="39dp"
    card_view:cardElevation="0dp"
    card_view:cardUseCompatPadding="false"
    card_view:cardPreventCornerOverlap="false"
    card_view:cardCornerRadius="7dp"
    card_view:contentPaddingLeft="4dp"
    card_view:contentPaddingRight="4dp">

    <TextView
        android:id="@+id/title"
        android:layout_width="71dp"
        android:layout_height="39dp"
        android:textColor="#ffffff"
        android:background="#FF9400"
        android:gravity="center" />
</android.support.v7.widget.CardView>

如果我删除内容填充,那么角半径可以工作,但我需要两者.

有人有主意吗?我知道我可以将cardUseCompatPadding设置为true,但是整张卡片都有填充,这与文本视图混淆.

编辑:

这是我目前的设计,以及我正在复制的内容

解决方法

如果这是一个水平的RecyclerView,请向其添加一个ItemDecorator,使对象之间有一些间距.
SpaceItemDecorator itemDecorator = new SpacesItemDecorator(16)
mList.addItemdecoration(itemDecorator);

使用类似于此的SpaceItemDecorator:

public class SpacesItemDecorator extends RecyclerView.Itemdecoration {

    private final int space;

    public SpacesItemDecorator(int spaceInPx) {
        this.space = spaceInPx;
    }

    @Override
    public void getItemOffsets(Rect outRect,View view,RecyclerView parent,RecyclerView.State state) {
        outRect.left = space;
        outRect.right = space;
    }
}

相关文章

这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...
这篇文章主要介绍“Android岛屿数量算法怎么使用”的相关知识...
本篇内容主要讲解“Android如何开发MQTT协议的模型及通信”,...
本文小编为大家详细介绍“Android数据压缩的方法是什么”,内...