더 큰 요점을 보여주는 예를 들어 보겠습니다.
내 앱에 여러 FloatingActionButton이 있다고 상상해보십시오. 따라서 하나의 스타일을 만들어 재사용하고 싶습니다. 그래서 다음을 수행합니다.
<style name="FabStyle” parent ="Widget.Design.FloatingActionButton">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_margin">16dp</item>
<item name="app:backgroundTint">@color/accent</item>
<item name="app:layout_anchorGravity">end|bottom</item>
</style>
내가 가지고있는 문제는 불평하기 때문에 코드가 컴파일되지 않는다는 것입니다.
Error:(40, 5) No resource found that matches the given name: attr 'app:backgroundTint'.
resources
태그 를 통해 네임 스페이스를 가져 오려고했지만 작동하지 않습니다.
<resources
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
>
이걸 어떻게 작동시킬 수 있는지 아이디어가 있습니까?
답변
들어 app
네임 스페이스를 지정할 필요가 없습니다 app:<property name>
. 그냥 <property name>
충분하다.
예를 들면
<style name="FabStyle" parent="Widget.Design.FloatingActionButton">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_margin">16dp</item>
<item name="backgroundTint">@color/accent</item>
<item name="layout_anchorGravity">end|bottom</item>
</style>
그리고 layout_anchorGravity
플로팅 작업 버튼을 정의하는 XML 파일에서 설정해야합니다.