Invalid drawable added to LayerDrawable! Drawable already belongs to another owner but does not expose a constant state

Published: by

FloatingActionButton의 배경을 바꾸기 위해 android:backgroundTint를 사용했다. 배경색은 잘 나왔으나 아래와 같은 경고 에러가 발생했다. 동작하는 문제가 전혀 없다.

경고 에러(충돌)

Invalid drawable added to LayerDrawable! Drawable already belongs to another owner but does not expose a constant state.
// 잘못된 drawable이 LayerDrawable에 추가되었다. Drawable은 이미 다른 소유자에 속하지만 일정한 상태를 노출하지 않는다.

원인

잘 모름 ㅡ,,ㅡ^

backgroundTint는 Android API 21에서 추가되었는데, 개발중인 앱은 21이상을 지원한다. 레이아웃 xml상에서 app:backgroundTint를 사용하던, android:backgroundTint를 사용하던 상관 없어야 하지 않을까?

해결

android:backgroundTint ----> app:backgroundTint

즐겁게 개발자자 :)