기존의 액션바(툴바)를 없애고 새로운 툴바를 정의하기 위해 Theme의 DarkActionBar -> NoActionBar로 설정해줬습니다.
이후에 xml에 CoordinatorLayout, AppbarLayout, Toolbar를 차례로 정의해줬습니다.
이 툴바에는 xml에서든 소스코드에서든 어디서든 Theme은 따로 지정해주지 않았습니다.
그런데 궁금한것이 생겨 기본 Theme의 colorPrimary의 색상을 다른 색상으로 변경해보니
xml에 새로 정의한 툴바의 색상도 변경되었습니다.
위에서도 말했지만 어디서든 Theme은 지정해주지 않았습니다.
그런데 왜 색상이 변경되는 것인가요? 왜 전혀 관련없는 Theme 스타일의 영향을 받은건가요?
코드입니다
Themes.xml
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.WriteWeight" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_500</item>
<item name="colorPrimaryVariant">@color/purple_700</item>
<item name="colorOnPrimary">@color/white</item>
<!-- Secondary brand color. -->
<item name="colorSecondary">@color/teal_200</item>
<item name="colorSecondaryVariant">@color/teal_700</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>
</resources>
activity_main.xml
<androidx.coordinatorlayout.widget.CoordinatorLayout
android:id="@+id/coordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
app:elevation="0dp">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:titleMarginStart="30dp" />
</com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>