2012-03-03 5 views
1

私はICS(Google Nexusはテストデバイスです)で自分のアプリに問題があります。カスタムの代わりに暗い背景 - ICSのみ

私のアプリは完全なカスタムアピアランスを使用しています。私のレイアウトには独自のドロウアブルボタンがあります。そのため、どこにでもデフォルトのスタイルは使用しません。また、私はどこにでもスタイルを定義しませんでした。

私の問題は次のとおりです。プレビューでテストしたデバイス(たとえば、3.1,3.3など)ではアプリが正常に見えます。しかし、バックグラウンドドロワブルは暗いグレーの背景(Holo.Dark/Light ???)で上書きされます。

私のカスタム背景は非常に明るく、テキストは黒です。 ICSでは、背景は暗い灰色で、テキストはまだ黒です(私はそれを黒色と定義していたため)。したがって、テキストは読めません。

私が欲しいもの:どのデバイスでも(ICSを含む)私のカスタム背景を表示させたい。私はデフォルトテーマを使用したくありません。

私はこの質問が以前に尋ねられていないことを願っています。 [OK]を、ここで失敗したレイアウトです:私は他の誰かが同じ問題を抱えていたしている必要がありますが、私はGoogleで何かを見つけることができませんでしたか、SO ...

EDITは信じています。かなり長い間、私は無関係な部分を省き、いくつかのコメントを追加しました。またanyonesの前に尋ねる。バックグラウンド描画可能なデバイスは、どのデバイスでも使用できます。知っておくことも重要です。このレイアウトはすべての活動に基本として使用されます。すべての活動は、私が実際に私のギャラクシーネクサス上で表示されないレイアウトの背景画像と同様の問題を抱えていたコンテンツでframeLayout

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/bg" 
    android:baselineAligned="false" 
    android:orientation="vertical" > 
    <!-- the background of this LL is _not_ shown on ICS --> 

    <LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/bg_menu_top" 
    android:orientation="horizontal" > 
    <!-- the background of this LL is shown on ICS --> 

    <!-- the title of the activity at the top of the screen --> 
    <TextView 
     android:id="@+id/main_frame_title" 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:text="Title" 
     android:textColor="#FFF" 
     android:textSize="25sp" 
     android:textStyle="bold" /> 

    <!-- some other views here --> 
    </LinearLayout> 


    <!-- this text is not visible on a dark background but on a bright one --> 
    <TextView 
    android:id="@+id/main_frame_subtitle" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="5dip" 
    android:text="Subtitle" 
    android:textColor="#000" 
    android:textSize="20sp" 
    android:textStyle="bold" /> 

    <FrameLayout 
    android:id="@+id/main_frame_content" 
    android:layout_width="match_parent" 
    android:layout_height="0dip" 
    android:layout_weight="1" > 
    <!-- every activity inserts its specific layout here --> 
    </FrameLayout> 

    <LinearLayout 
    android:id="@+id/main_frame_breadcrumb" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/bg_menu_top" 
    android:orientation="horizontal" > 

    <!-- breadcrumb bar at the bottom --> 
    <!-- many ImageButtons are here --> 
    </LinearLayout> 

</LinearLayout> 
+0

私はあなたの質問に答える準備ができていませんが、問題のレイアウトを含めると、人々があなたにもっと簡単に答えると思います。 –

答えて

0

に、独自のレイアウトを膨らませます。私は、2Dハードウェアグラフィックスアクセラレーションを有効にしていたいくつかの点で判明:

設定>開発者向けオプション>フォースGPUこの機能を無効に

をレンダリングするには、問題を修正し、そして今、私の背景画像がうまく表示されています。問題をトラブルシューティングするのは非常に不満でしたが、答えを見つけた後、私はこの特定のオプションが非常に幅広いグラフィックスの問題を壊していることを知りました。とにかく、うまくいけばそれはあなたの場合です。お役に立てれば。

+0

私はたくさんのアニメーションを使用しているので、ハードウェアレンダリングをオフにしたくありません。 :( –

関連する問題