ぜのぜ

しりとりしようぜのぜのぜのぜ

170日目

日記

今日書いたコード

styleを適用したアプリ画面

github.com

感想

styles.xml

styleはビューのattributeの値の集まりで,継承が可能.ウィジェットのタイプごとに作られる.

res/values/以下に置かれる.名前は継承元の名前のうち,ライブラリ名をアプリ名で置き換えたものが推奨される.(Widget.MaterialComponents.TextView -> Widget.TipTime.TextView

定義

<style name="Widget.TipTime.TextView" parent="Widget.MaterialComponents.TextView">
    <item name="android:minHeight">@dimen/min_text_height</item>
    <item name="android:gravity">center_vertical</item>
    <item name="android:textAppearance">?attr/textAppearanceBody1</item>
</style>

使用

<TextView
        ...
        style="@style/Widget.TipTime.TextView"
        ...
/>

themes.xml内で指定することもできる.

<item name="switchStyle">@style/Widget.TipTime.CompoundButton.Switch</item>

dimens.xml

よく使うdimensionに名前をつけて管理するための定義を書くファイル.res/values/以下に置かれる.

定義

<dimen name="min_text_height">48dp</dimen>

仕様

<style name="Widget.TipTime.TextView" parent="Widget.MaterialComponents.TextView">
    <item name="android:minHeight">@dimen/min_text_height</item>
</style>