2016-12-27 84 views
1

我一直致力於一個項目,並且要求我要求在卡片視圖的兩側進行半圓形切割。 我已經嘗試了很多。我請求專家幫我解決側切和去除陰影的問題。 我的輸出:如何在CardView中隱藏自定義形狀中的陰影?

見我的代碼

enter image description here

理想輸出輸出

enter image description here

代碼:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 

<android.support.v7.widget.CardView 
    xmlns:card_view="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    card_view:cardCornerRadius="20dp" 
    card_view:cardElevation="8dp" 
    card_view:cardMaxElevation="10dp" 
    card_view:cardBackgroundColor="#fff" 
    android:background="#a9a9a9" 
    android:layout_marginLeft="20dp" 
    android:layout_marginRight="20dp" 
    android:layout_marginTop="33dp" 
    android:id="@+id/view" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true"> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="-22dp" 
      android:background="@drawable/coupon_border" 
      android:layout_gravity="center_vertical" /> 

     <ImageView 
     android:layout_width="80dp" 
     android:id="@+id/img1" 
     android:layout_height="80dp" 
     android:layout_marginLeft="15dp" 
     android:layout_marginRight="10dp" 
     android:layout_marginTop="25dp" 
     android:src="@drawable/sample1" 
     android:layout_marginBottom="30dp"/> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 
      <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="This is a long title." 
      android:layout_marginTop="15dp" 
      android:layout_marginBottom="5dp" 
       android:layout_marginRight="40dp" 
      android:textColor="#605f5f" 
      android:textSize="16dp" 
      android:layout_alignTop="@+id/view" 
      android:layout_centerHorizontal="true" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:textSize="10dp" 
       android:layout_marginRight="40dp" 
       android:text="Lorem ipsum dolor sit amet, justo habemus  partiendo id has, et stet labore mediocrem pro. " 
       android:maxLines="2" 
       /> 

     </LinearLayout> 

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




</RelativeLayout> 

券邊境xml文件:

<?xml version="1.0" encoding="utf-8"?> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="oval" 
    android:useLevel="false" > 
    <stroke 
    android:width="2dip" 
    android:color="#a9a9a9"/> 
<size 
    android:height="30dp" 
    android:width="30dp" /> 
</shape> 
+0

嘗試刪除'card_view:cardElevation = 「8DP」'從你的CardView或將其設置爲'0dp' –

+0

好。但這對於裁剪掉部分卡片仍然可見的部分無效。 –

回答

0

試試這個,希望這會奏效。

<android.support.v7.widget.CardView 
xmlns:card_view="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
card_view:cardCornerRadius="20dp" 
card_view:cardElevation="0dp" 
card_view:cardBackgroundColor="#fff" 
android:background="#a9a9a9" 
android:layout_marginLeft="20dp" 
android:layout_marginRight="20dp" 
android:layout_marginTop="33dp" 
android:id="@+id/view" 
android:layout_alignParentTop="true" 
android:layout_centerHorizontal="true"> 
+0

如何從切口部分去除陰影並將其添加到半圓部分中? –

+0

所以你試圖去除除半圓以外的所有地方的陰影? –

+0

我試圖從半圓放置後應該看不到的部分去除陰影。爲了使它看起來像想法圖像 –