2014-12-09 3 views
6

내가 떠있는 버튼을 추가하고 튜토리얼에서이 같은 버튼 XML로 속성 android:elevation을 추가라고하는 방법을 보여주기 위해 가정 튜토리얼 따라하기 위해 노력하고있어 :알 수없는 속성 안드로이드 : 고도

<ImageButton 
    android:layout_width="30dp" 
    android:layout_height="30dp" 
    android:id="@+id/editButton" 
    android:layout_gravity="center|right" 
    android:clickable="false" 
    android:background="@drawable/edit_grey" 
    android:layout_marginRight="1dp" 
    android:elevation="@dimen/elevation_low"/> 

하지만 그 속성을 인식하지 못했습니다 ... 내 프로젝트 타겟 또는 SDK와 관련이 있다고 생각합니다 ... 누군가 나를 도울 수 있습니까?

+0

어떤 API 수준을 사용하고 있습니까? 21보다 작 으면 21 –

+0

으로 변경하십시오.이 경고가 필요하지 않으면 tool : targetApi = "lollipop"을 추가하십시오. – Killer

답변

13

다른 Android 5.0 API와 마찬가지로 android:elevation을 사용하려면 Android 5.0 (API 21)을 컴파일해야합니다. 그렇다고해서 대상 SDK 레벨이나 최소 SDK 레벨을 변경해야한다는 것은 아닙니다.

참고 : XML 파일은 android:elevation이 Android 5.0 이상에서만 작동한다는 경고를 계속 표시 할 수 있습니다. 이 경고는 이전 버전의 Android에는 플로팅 액션 버튼에 고도 그림자가 표시되지 않는다고 알려주는 것입니다. 그러나 오류가 발생하지는 않습니다. 이전 버전의 Android에서는 이해하지 못하는 XML 속성을 무시합니다.

1

고도 특성은 매우 새롭습니다. 그것은 적용된 뷰의 리프트를 정의합니다. 최신 안드로이드 버전의 머티리얼 디자인에 사용됩니다.

Material Design

당신은 API 레벨 21에 사용할 수 있습니다, 당신의 목표 수준이보다 낮은 같아요. 당신은 당신이 사용할 수있는 그림자 일부를 달성하려면

는 :

:

Shadow Drawables for Views

을 아니면 CardViews 또는 같은과 SupportLibrary을 사용할 수 있습니다, 그들은 API 레벨 7에서 고도를 지원

[How-to] Use the v21 Support Libs on Older Versions & Target L While Remaining Backwards-Compatible

희망이 도움이됩니다.