2014-10-10 20 views
6

Ho un problema che non ho ancora visto. A volte il file xml di layout nel mio ActionBarActivity mostra uno strano comportamento. Il colore di sfondo di un layout lineare e di una barra di azione personalizzata mostra diverse tonalità di colore applicato. A volte funziona perfettamente come previsto. Ecco gli screenshot del mio problema.Strano comportamento nel layout del mio ActionBarActivity

risultato atteso

enter image description here

volte mi ricevendo come questo enter image description here

mio layout

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <Button 
     android:id="@+id/submitButton" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" 
     android:layout_margin="5dp" 
     android:background="@drawable/login_button_selector" 
     android:text="@string/submit" 
     android:textColor="@color/white" /> 

    <TextView 
     android:id="@+id/titleText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:layout_margin="10dp" 
     android:text="@string/add_food" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:textColor="@color/theme_red" /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_above="@+id/submitButton" 
     android:layout_below="@+id/titleText" 
     android:layout_centerHorizontal="true" 
     android:layout_margin="5dp" 
     android:orientation="vertical" 
     android:weightSum="3" > 

     <!-- Time Block --> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1" 
      android:orientation="horizontal" 
      android:weightSum="4" > 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@color/theme_red" 
       android:gravity="center" > 

       <TextView 
        android:id="@+id/timeTitle" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/time" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_margin="5dp" 
       android:layout_weight="3" 
       android:weightSum="5" > 

       <!-- 
       <wheel.WheelView 
        android:id="@+id/day" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="2.3" /> 

       <wheel.WheelView 
        android:id="@+id/hour" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight=".9" /> 

       <wheel.WheelView 
        android:id="@+id/mins" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight=".9" /> 

       <wheel.WheelView 
        android:id="@+id/ampm" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight=".9" /> 
       --> 
      </LinearLayout> 
     </LinearLayout> 

     <!-- Item Block --> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1" 
      android:orientation="horizontal" 
      android:weightSum="4" > 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@color/theme_red" 
       android:gravity="center" > 

       <TextView 
        android:id="@+id/itemTitle" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/item" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

      <RelativeLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_margin="5dp" 
       android:layout_weight="3" > 

       <Spinner 
        android:id="@+id/foodListSpinner" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_alignParentLeft="true" 
        android:layout_toLeftOf="@+id/addFoodItems" /> 

       <ImageButton 
        android:id="@+id/addFoodItems" 
        android:layout_width="50dp" 
        android:layout_height="50dp" 
        android:layout_alignParentRight="true" 
        android:layout_marginLeft="10dp" 
        android:layout_marginRight="10dp" 
        android:background="@drawable/circle_button_selector" 
        android:contentDescription="@string/add_food_item" 
        android:src="@drawable/add_food" /> 
      </RelativeLayout> 
     </LinearLayout> 

     <!-- Quantity Block --> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1" 
      android:orientation="horizontal" 
      android:weightSum="4" > 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:background="@color/theme_red" 
       android:gravity="center" > 

       <TextView 
        android:id="@+id/quantityTitle" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/quantity" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_margin="5dp" 
       android:layout_weight="3" 
       android:weightSum="3" > 

       <Spinner 
        android:id="@+id/quantityNoSpinner" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="2" /> 

       <Spinner 
        android:id="@+id/quantityPieceSpinner" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="1" /> 
      </LinearLayout> 
     </LinearLayout> 
    </LinearLayout> 

</RelativeLayout> 
.210

mia abitudine ActionBar

<!-- the theme applied to the application or activity --> 
    <style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
     <item name="android:actionBarStyle">@style/MyActionBar</item> 

     <!-- Support library compatibility --> 
     <item name="actionBarStyle">@style/MyActionBar</item> 
    </style> 

    <!-- ActionBar styles --> 
    <style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse"> 
     <item name="android:background">@color/theme_red</item> 

     <!-- Support library compatibility --> 
     <item name="background">@color/theme_red</item> 
     <item name="android:alwaysDrawnWithCache">true</item> 
     <item name="android:displayOptions">showTitle|showHome|homeAsUp</item> 
     <item name="android:icon">@android:color/transparent</item> 
    </style> 

Questi problemi appare solo in alcuni dispositivi. Spero che qualcuno possa aiutarmi a risolvere questo problema.

+0

Hai controllato le tue risorse. Penso che ci sia un problema con le risorse multi-layout "@ color/theme_red". Quindi controllali .. –

+0

Sì, ho controllato. Ma nessun duplicato per theme_red –

+0

Basta provare a inserire il codice di colore rosso statico invece di "@ color/theme_red". –

risposta

0

Prova in questo modo, spero che questo ti aiuterà a risolvere il tuo problema.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <TextView 
     android:id="@+id/titleText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="10dp" 
     android:text="@string/add_food" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:textColor="@color/theme_red" /> 



    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_margin="5dp" 
     android:orientation="vertical" 
     android:layout_weight="1"> 

     <!-- Time Block --> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1"> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="0.30" 
       android:background="@color/theme_red" 
       android:gravity="center" > 

       <TextView 
        android:id="@+id/timeTitle" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/time" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_margin="5dp" 
       android:layout_weight="0.70"> 

       <!-- 
       <wheel.WheelView 
        android:id="@+id/day" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="2.3" /> 

       <wheel.WheelView 
        android:id="@+id/hour" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight=".9" /> 

       <wheel.WheelView 
        android:id="@+id/mins" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight=".9" /> 

       <wheel.WheelView 
        android:id="@+id/ampm" 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight=".9" /> 
       --> 
      </LinearLayout> 
     </LinearLayout> 

     <!-- Item Block --> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1"> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="0.30" 
       android:background="@color/theme_red" 
       android:gravity="center" > 

       <TextView 
        android:id="@+id/itemTitle" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/item" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

      <RelativeLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_margin="5dp" 
       android:layout_weight="0.70" > 

       <Spinner 
        android:id="@+id/foodListSpinner" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_alignParentLeft="true" 
        android:layout_toLeftOf="@+id/addFoodItems" /> 

       <ImageButton 
        android:id="@+id/addFoodItems" 
        android:layout_width="50dp" 
        android:layout_height="50dp" 
        android:layout_alignParentRight="true" 
        android:layout_marginLeft="10dp" 
        android:layout_marginRight="10dp" 
        android:background="@drawable/circle_button_selector" 
        android:contentDescription="@string/add_food_item" 
        android:src="@drawable/add_food" /> 
      </RelativeLayout> 
     </LinearLayout> 

     <!-- Quantity Block --> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:layout_weight="1"> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_weight="0.30" 
       android:background="@color/theme_red" 
       android:gravity="center" > 

       <TextView 
        android:id="@+id/quantityTitle" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/quantity" 
        android:textAppearance="?android:attr/textAppearanceSmall" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_margin="5dp" 
       android:layout_weight="0.70"> 

       <Spinner 
        android:id="@+id/quantityNoSpinner" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="2" /> 

       <Spinner 
        android:id="@+id/quantityPieceSpinner" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="1" /> 
      </LinearLayout> 
     </LinearLayout> 
    </LinearLayout> 

    <Button 
     android:id="@+id/submitButton" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="5dp" 
     android:background="@drawable/login_button_selector" 
     android:text="@string/submit" 
     android:textColor="@color/white" /> 
</LinearLayout> 
+0

Provato, ma non lavorato –