2012-01-24 11 views
0

さまざまなデバイスで、オプションメニューにさまざまな背景が使用されています。これは私の原因となる問題は、私のオプションメニューボタンに使用する灰色のアイコンが、より暗いメニューの背景では良く見えないということです。私の読書と実験から、私はこれに対処するための3つの選択肢を見る。 3番は私がやろうと思っていますが、私はそれを実装することについて質問があります。また、この問題に関する一般的な考えやアドバイスにも非常に関心があります。Android:さまざまなオプションメニューの色を扱う?

  1. 背景色に関係なく見栄えのよいアイコンを使用してください。多分、白い輪郭の暗い灰色のアイコン?これは実装が簡単なオプションですが、理想的なアイコンを取得するのは難しいです。

  2. カスタム背景色を設定します。これを行うためのコードは非常にハッキリであるように見え、デバイステーマに適合しないオプションメニューが表示されます。

  3. 2セットのアイコンを使用して、プログラムで1つのlight-ishメニューと1つのdark-ishメニューを設定します。これは美的に有望なようですが、私は背景の色/明度を決定する方法を見つけることができませんか?

答えて

1

最適なオプション(および問題なく前に行ったことがあります)は、カスタム背景色を設定することです。オプションメニューの仕組みを理解していれば、実際にというのはハッキーではありません。オプションメニューが拡張されると、各ボタンの背景として使用するViewオブジェクトを参照します。問題は、異なるデバイスメーカーがカスタムテーマ(ブリーチ)を使用していることです。アプリケーションが実行されているデバイスに関係なく、オプションメニューが常に同じに見えるようにするには、カスタムViewを作成し、これをバックグラウンドとして設定します。

これは私がこの問題のために見つけた最高のリソースです:
http://bit.ly/ymc0Zc

私はそれが役に立てば幸い!

+0

まあ、私はそれをしたくなかった2つの理由。私はそれがデバイスのテーマと一貫していることを望んでいるだろう(誰かがこれを気にしているかどうかわからないが)。そして、下のスレッドによれば、カスタム背景を設定することは、2.3ではハッキーです(ハッキーは大したことではありません)。その2つの理由から、私は単に「より良い」オプションを望んでいました。 http://stackoverflow.com/questions/2944244/change-the-background-color-of-the-options-menu – ab11

+0

ええ、それは理にかなっています。デバイスのテーマに関する限り、今日の市場に浸透しているすべてのカスタムUIに対応するのはかなり難しい。あなたの最善の策は、あなたが以前に述べたようにすることです - どんな環境でも動作するアイコンを設計してください。アイコンそのものを濃い灰色にしますが、Theme.lightの背景に合った白い色で輪郭を描きます。そうすることで、電話機が軽いテーマを使用しているときに輪郭が見えなくなり、あなたのアイコンだけが残ってしまいますが、テーマが暗いときは視界に役立つ境界があります。 – roboguy12

+0

うわー、私はちょうどそのコメントがどれくらいの長さであったかを知っていました...ごめんなさい、私は長い間巻き込まれがちです。 – roboguy12

関連する問題