线性布局的颜色受衬垫线性布局颜色的影响

时间:2012-07-28 11:02:31

标签: android android-layout colors

我在线性布局中包含了一些线性布局。但我希望顶部的线性布局(包括一个)是灰色的,只是背景橙色。当我尝试这个时,一切都是橙色的!有什么方法可以防止这种情况吗?

my ll:

  <?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:orientation="vertical" 
    android:background="@color/orange">

     <include
            android:id="@+id/bt_overview_list_places"
            layout="@layout/single_overview_item" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"/>
      <include
            android:id="@+id/bt_overview_list_agenda"
            layout="@layout/single_overview_item" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"/>
       <include
            android:id="@+id/bt_overview_list_shopping"
            layout="@layout/single_overview_item" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"/>
        <include
            android:id="@+id/bt_overview_list_food"
            layout="@layout/single_overview_item" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"/>


</LinearLayout>

我包括的那个:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/lloverview"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:orientation="vertical"
  android:background="@color/custom_button_grey"
  >
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="horizontal"
  >
  <ImageView
      android:id="@+id/ivoverviewimage"
      android:layout_width="50dp"
      android:layout_height="50dp" android:src="@drawable/ic_launcher" android:scaleType="centerCrop"
      android:layout_margin="10dp"
      android:layout_weight="1"/>

  <LinearLayout
      android:layout_width="225dp"
      android:layout_height="wrap_content"
      android:orientation="vertical" >

  <TextView
      android:id="@+id/tvoverviewname"
      android:layout_width="225dp"
      android:layout_height="wrap_content"
      android:layout_gravity="left|top"
      android:layout_marginLeft="10dip"
      android:text="naam"
      android:textSize="16dip" 
      android:maxLines="1"
      android:ellipsize="marquee"
      android:textColor="@color/black"/>

 <TextView
     android:id="@+id/tvoverviewtext"
     android:layout_width="225dp"
     android:layout_height="wrap_content"
     android:layout_marginLeft="10dip"
     android:maxLines="3"
     android:text="tip"
     android:textSize="12dip" 
     android:ellipsize="end"
     android:textColor="@color/black"/>

 </LinearLayout>



 <ImageView 
     android:id="@+id/arrow"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_weight="1"
      android:src="@drawable/iconarrowsmall"
      android:layout_gravity="center_vertical"
      android:layout_margin="2dip"
     />

</LinearLayout>
<ImageView 
     android:id="@+id/bottom_border"
     android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:src="@drawable/custombuttonlist_bottomborder"
     />

</LinearLayout>

我已尝试以编程方式提供线性布局颜色:

lPlaces= (LinearLayout)findViewById(R.id.bt_overview_list_places);
llPlaces.setBackgroundColor(R.color.custom_button_grey);

但是所有东西都保持橙色(颜色有些不同)。

我检查了我的颜色,我认为应该100%不透明:

<color name="custom_button_grey_text">#585850</color>

即使在前面添加了FF:

 <color name="custom_button_grey_text">#FF585850</color>

3 个答案:

答案 0 :(得分:0)

在xml

中尝试这样
android:background="#FF4500" 

取代

android:background="@color/custom_button_grey"

答案 1 :(得分:0)

您应该覆盖每个包含的布局的背景参数。您可以使用android:layout_*

覆盖任何属性

使用<include>标记查看官方文档。

答案 2 :(得分:0)

好的,我明白了:

我创建了一个可绘制的文件:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
     <!-- focused -->
    <item android:state_focused="true" android:drawable="@color/list_even" />
    <!-- focused and pressed-->
    <item android:state_focused="true" android:state_pressed="true" android:drawable="@color/list_even" />
    <!-- pressed -->
    <item android:state_pressed="true" android:drawable="@color/list_even" />
    <!-- default -->
    <item android:drawable="@color/list_odd" /> 
</selector>

(当我按下它时,我的颜色变化很好) 并将其设置为后台资源:

  

llPlaces.setBackgroundResource(R.drawable.overview_background_color_even);