« From the barrel | トップページ | ListViewの中のボタンからActivityにイベントを通知する »

2011年2月 6日 (日)

ThemeとStyle

前のエントリで書きましたがテーマとスタイルについて

とりあえず、Developers サイトにある情報がほとんどすべてなのですが、重要なのはページの最後のほうにあるThemeとStyleのリンクです。

つまり、Themeというスタイルリソースが全体の構成を定義していて、文字やリンクの色といった項目の属性にについて決定しています。各種スタイルはstyle.xmlのほうに書かれていて、たとえば通常の文字が使用するスタイルはTextAppearanceという名前です。

どうやって使うかというと、たとえば自分のレイアウトのTextViewにstyle=@android:style/TextAppearanceと書いておきます。そして、Themeを継承したMyThemeを自分のテーマとして作成し、その中の文字の色、textColorPrimaryを自分の好きな色に置き換えれば、いちいちレイアウトのxmlを編集しなくても全部のTextViewの色を設定しなおすことができます。

でも、使ってみると色々疑問が沸いてきます。

なぜか、ListViewの中のTextViewにはスタイルが適用されない。もちろん、個別にレイアウトに書いてInflateしたのは効くのですが、TextAppearanceと指定してもテーマの指定が反映されません。

反転表示(明るいバックに暗い文字)というスタイルがない。アプリケーション名のヘッダなどに使われているのでどこかにあるはずだと思うのですが、見つかっていません。style.htmlにある*Inverseというスタイルを使うと、黒バックに黒文字になってしまい、まったく読めません。

まぁ、平日はあまり時間の掛かることはできないので、今度の週末までに小さなテストプログラムを書きながら調べてみたいと思います。

« From the barrel | トップページ | ListViewの中のボタンからActivityにイベントを通知する »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/60027/50796538

この記事へのトラックバック一覧です: ThemeとStyle:

« From the barrel | トップページ | ListViewの中のボタンからActivityにイベントを通知する »