2011年5月20日金曜日

Android Holo theme を使う

Android 3.0 から標準で使われている holographic theme "Holo" を使うには

 android:minSdkVersion もしくは android:targetSdkVersion に >=11 を指定する

必要があります。


Android 3.0 以上では Holo theme を使い、それより前のプラットフォームでは通常の Theme を使う場合には

res/values/styles.xml
res/values-v11/styles.xml

を用意して

res/values/styles.xml
  1. <style name="MyLightTheme" parent="android:Theme.Light">  
  2.   ...  
  3. </style>  


res/values-v11/styles.xml
  1. <style name="MyLightTheme" parent="android:Theme.Holo.Light">  
  2.   ...  
  3. </style>  


AndroidManifest.xml
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     ...  
  4.     <uses-sdk android:targetSdkVersion="11" android:minSdkVersion="7"/>  
  5.     <application android:icon="@drawable/icon" android:label="@string/app_name"  
  6.         android:theme="@style/MyLightTheme">  
  7.         <activity ... >  
  8.         </activity>  
  9.     </application>  
  10. </manifest>  

のように指定します。


Holo 関係の Theme は R.style あたりにあります。

・Theme.Holo
・Theme.Holo.Panel
・Theme.Holo.NoActionBar
・Theme.Holo.NoActionBar.Fullscreen
・Theme.Holo.Wallpaper
・Theme.Holo.Wallpaper.NoTitleBar
・Theme.Holo.Dialog
・Theme.Holo.Dialog.MinWidth
・Theme.Holo.Dialog.NoActionBar
・Theme.Holo.Dialog.NoActionBar.MinWidth
・Theme.Holo.DialogWhenLarge
・Theme.Holo.DialogWhenLarge.NoActionBar
・Theme.Holo.InputMethod

・Theme.Holo.Light
・Theme.Holo.Light.Panel
・Theme.Holo.Light.NoActionBar *
・Theme.Holo.Light.NoActionBar.Fullscreen *
・Theme.Holo.Light.Dialog
・Theme.Holo.Light.Dialog.MinWidth
・Theme.Holo.Light.Dialog.NoActionBar
・Theme.Holo.Libht.Dialog.NoActionBar.MinWidth
・Theme.Holo.Light.DialogWhenLarge
・Theme.Holo.Light.DialogWhenLarge.NoActionBar

* R.style | Android Developers には漏れているけれど、SDK には含まれている


何個かキャプチャーをとってみた。

Theme.Holo
 Honeycomb の holographic theme の Dark version


Theme.Holo.Panel
 これまでの Translucent みたいなものみたい


Theme.Holo.NoActionBar
 Theme.Holo の Action Bar なし version


Theme.Holo.Wallpaper


Theme.Holo.Dialog
 Dialog 用の theme


Theme.Holo.Dialog.MinWidth


Theme.Holo.DialogWhenLarge.NoActionBar




Theme.Holo.Light


Theme.Holo.Light.Panel


Theme.Holo.Light.Dialog


Theme.Holo.Light.Dialog.NoActionBar


Theme.Holo.Light.Dialog.MinWidth


Theme.Holo.Light.DialogWhenLarge

0 件のコメント:

コメントを投稿