RecyclerView中的CardView,布局权重

时间:2016-05-06 13:12:38

标签: android android-layout

我想要在活动中显示2张卡片。我希望他们都使用50%的屏幕。所以它基本上看起来像是利用整个屏幕的两个大按钮。

我首先使用了两个不同的CardView并设计了它们,但我无法使OnClickListener工作。

所以后来我做了一个recyclerview并通过适配器添加了这些卡。但是现在,这些卡片并没有使用整个屏幕。

我甚至尝试添加布局权重并将高度保持为0px以使其工作。但那也没有用。

我现在可以做些什么来获得我想要的东西,或者还有什么我可以使用而不是CardView?

2 个答案:

答案 0 :(得分:0)

尝试将android:clickable="true"添加到CardView xml属性中以使OnClickListener正常工作

答案 1 :(得分:0)

如果只有两张卡并且他们需要整个屏幕,您可以使用LinearLayout

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >

    <android.support.v7.widget.CardView
        android:id="@+id/cv_1"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>
    <android.support.v7.widget.CardView
        android:id="@+id/cv_2"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>
</LinearLayout>

设置点击监听器:

findViewById(R.id.cv_1).setOnClickListener(new View.OnClickListener(){
    @Override
    public void onClick(View v) {
       Toast.makeText(v.getContext(),"Clicked",Toast.LENGTH_SHORT).show();
    }
});