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