<< Android-Note
アプリのテーマを自作して設定する
アプリのアクティビティやビューに独自のテーマ(Theme)を自作して設定する方法を紹介します。
styles.xmlにテーマを作る
テーマはstyles.xmlファイル上にstyle要素として定義します。たとえば次のようなものがテーマです。
<style name="MyTheme" parent="android:Theme.Light" > <item name="android:windowNoTitle" >true</item > <item name="android:textSize" >18sp</item> <item name="android:drawablePadding" >0dp</item> </style>
これはMyThemeという名前で作ったタイトルバーなしでテキストサイズが18dpのテーマです。
parent属性にはこのテーマに継承させたい親テーマを指定します。この例ではandroid:Theme.Lightという白を基調にしたテーマを親テーマとしています。
Androidであらかじめ用意されているテーマの中で代表的なテーマには次があります。
テーマ名 | 説明 |
---|---|
android:Theme.Light | 背景色に白、テキスト色に黒を基調としたテーマ |
android:Theme.Holo | 背景色に黒、テキスト色に白を基調としたテーマ |
android:Theme.NoTitleBar | タイトルバーなしのテーマ |
android:Theme.Wallpaper | 背景に現在の壁紙を表示するテーマ |
android:Theme.Translucent | 背景色が透明になるテーマ |
より詳しくテーマについて調べたい場合はthemes.xmlを見てください。
アプリへテーマを設定
作ったテーマをアプリ全体に設定するにはAndroidManifest.xmlのapplication要素のtheme属性にテーマを渡します。
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/MyTheme" >
もし特定のアクティビティだけにテーマを設定したい場合もactivity要素のtheme属性に同じようにテーマのスタイルを渡します。
関連項目
© Kaz