View의 android:elevation이 안될 때

그림자를 올바로 주었는지, 그림자가 표시될 수 있는지  확인하면 된다.

  • android:elevation 값을 주자.
    당연히, 그림자 효과를 위해 얼마나 높게 보일지 정해주어야 한다.
  • android:background 를 지정하자.
    배경색을 지정하지 않으면, 그림자가 생기지 않는다. ImageView와 같은 경우 이미지로 인해 background 색이 화면에 표시되지 않는다 하더라도 색을 지정하자. 참고로, 반투명은 가능하지만 투명도가 너무 높으면 그림자가 안보인다.
  • 그림자가 필요한 뷰와 부모 레이아웃 사이에 그림자를 그릴 공간이 없는 것은 아닌지 확인하자. 그림자는 자신의 부모 레이아웃 안에 그려지는데 만약 부모 레이아웃이 그림자를 가진 뷰를 여백 하나 없이 딱 붙어 감싸고 있다면 그림자를 그릴 공간이 없게 되어 보이지 않는다.
    그림자 그릴 공간을 확보하기 위해, 자식 뷰에 layout_margin 값을 주거나, 부모 뷰의 padding 값+ clipToPadding=”false”을 이용해 그림자가 그려질 공간을 부모 레이아웃과 내 레이아웃 사이에 간격을 둘 수 있다.

더 자세한 설명은 아래 글을 참고하자. elevation 장인이 답글을 달아두셨다.

참조

“View의 android:elevation이 안될 때”에 대한 1개의 생각

  1. 핑백: Tangible surfaces – Avada Classic

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.