2014-11-12 2 views
12

카드 항목이있는 RecyclerView가 있습니다. 그리고 프리 롤리팝 장치에서도 괜찮아 보입니다. 하지만 롤리팝에서는 어린이 카드 사이에 아무런 간격도 두지 않습니다. 여백과 패딩을 사용하려했지만 도움이되지 않았습니다. 롤리팝에 여백을 사용하면 괜찮아 보이지만 프리 롤립 간격과 동일한 여백을두면 매우 큰 것입니다. 다시 한번 : 간격이 다른 이유는 무엇입니까? 어떤 속성을 수정해야합니까?카드가있는 RecyclerView 사용

답변

22

L에서 그림자가보기 경계 외부에 있지만 L 이전이므로보기 내부에 있습니다 (불행히도 실제 그림자 지원 사전 L이 없음).

CardView의 L 간격도 동일하게하려면 cardUseCompatPadding을 true로 설정하십시오.

1

나는 동일한 문제가있었습니다. 롤리팝 장치에서 사용할 레이아웃 -v21 폴더를 만들고 레이아웃을 복제하여 올바르게 간격을 띄울 필요가있는 여백/패딩을 추가해야했습니다.

앱을 롤리팝으로 실행하면 올바른 공간이 추가 된 layout-v21 폴더에서 레이아웃이 읽히고 다른 기기는 공간이 필요하지 않은 표준 레이아웃 파일로 이동합니다 명시 적으로 설정해야합니다.

희망이 도움이됩니다.

15

yigit의 답변은 도움이되었지만 세부 사항이 없으므로이 게시물의 향후 시청자를 위해 여기에 일부를 추가 할 예정입니다.

여기에 내가 어떻게 작동하는지 (예 : yigit의 답변에서 android site 링크가 명확하지 않음) 예가 나와 있습니다.

<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:layout_height="wrap_content" 
    android:layout_width="match_parent" 
    android:layout_marginLeft="@dimen/activity_vertical_margin" 
    android:layout_marginRight="@dimen/activity_vertical_margin" 
    android:layout_marginTop="2dip" 
    android:layout_marginBottom="2dip" 
    card_view:cardUseCompatPadding="true"> 

    // Other layouts and views here 

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

res_ auto 스키마를 사용하려면 밑줄이 필요하고 card_view가 명확하지 않았습니다.

이 좋은 예가 Material Design Training입니다.

+1

CardView에 닫기 태그가 없습니다. 나는 그것을 고치고 싶었지만 적어도 6자를 편집해야한다. ((그리고 내가 생각할 수있는 것은 아무것도 없었다) - 당신이 그것을 고칠 수 있다면 좋을 것이다. :) – AgentKnopf

+1

죄송합니다. 모두 준비 됐어? – Splaktar

+1

Jepp이 좋아 보이고 자세한 답변을 주셔서 감사합니다 :)! 비록 내가 그 card_view : cardUseCompatPadding을 제거해야만 했었지만 제대로 해결되지 못했습니다. 그 당시 도서관이 실종 된 것인지는 확실하지 않았지만 실제로 작동하지 않는다면 다시 연락 할 것입니다. 나는 그것이 다른 이슈와 관련이 있다고 생각 하긴하지만 테스트를 해보면 괜찮을 것이라고 생각합니다. – AgentKnopf

관련 문제