2012-04-15 29 views
0

我是Android新手,无法正确执行此操作。开始其他活动后更改布局的backgroundcolor

我有一个布局,其中有一个setOnTouchListener,

arg0.setBackgroundColor(Color.parseColor("#4096EE")); 
Intent i = new Intent(getApplicationContext(), AddWebsiteActivity.class); 
NewsRecoveryActivity.this.startActivity(i); 

但我想恢复我的布局的背景后,我开始我的其他活动,因为如果我回去就好像我碰我的布局... 我怎样才能做到这一点 ?

预先感谢您

编辑:选择结果:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/add_website_layout" 
    android:padding="8dp" 
    android:background="@drawable/selector_add_website" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
> 

当我删除背景线它的工作。

+0

等待会给这只是希望,你必须创建你需要 – 2012-04-15 15:42:34

+0

现在尝试是否它的工作现在 – 2012-04-15 15:44:14

回答

0

谢谢阿加瓦尔帮我,解决方法:

在视图中绘制文件夹添加

android:background="@drawable/selector_add_website" 

selector_add_website

<selector 
android:id="@+id/selector_add_website" 
xmlns:android="http://schemas.android.com/apk/res/android"> 
<!-- Non focused states --> 
<item 
    android:state_focused="false" 
    android:state_selected="false" 
    android:state_pressed="false" 
    android:drawable="@color/black" /> 
<!-- Pressed --> 
<item 
    android:state_pressed="true" 
    android:drawable="@color/bluefocused" /> 
</selector> 

color.xml价值观夹

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
<color name="black">#ff000000</color> 
<color name="bluefocused">#4096EE</color> 
</resources> 
0

您可以使用selector和setbackground作为选择器。所以在接触时颜色会自动改变并恢复。

<selector 
    android:id="@+id/myselector" 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <!-- Non focused states --> 
    <item 
     android:state_focused="false" 
     android:state_selected="false" 
     android:state_pressed="false" 
     android:drawable="#FF0000" /> 
    <item 
     android:state_focused="false" 
     android:state_selected="true" 
     android:state_pressed="false" 
     android:drawable="#FF0000" /> 

    <!-- Focused states --> 
    <item 
     android:state_focused="true" 
     android:state_selected="false" 
     android:state_pressed="false" 
     android:drawable="#FF0000" /> 
    <item 
     android:state_focused="true" 
     android:state_selected="true" 
     android:state_pressed="false" 
     android:drawable="#FF0000" /> 

    <!-- Pressed --> 
    <item 
     android:state_pressed="true" 
     android:drawable="#FF0000" /> 
</selector> 

可根据需要更改颜色。

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" 
     android:drawable="@color/blue" /> 
    <item android:state_selected="true" 
     android:drawable="@color/red" /> 
</selector> 

使用上述选择

+0

我不知道选择到的样本完美selector.xml文件现在,但是当我尝试将选择器对应到我的布局时,我的应用崩溃了。 我使用:android:background =“@ drawable/selector_add_website”然后我创建一个selectora_dd_website.xml,以您的示例作为内容绘制,但崩溃崩溃并崩溃。 – Shinao 2012-04-15 15:11:13

+0

你把你的选择器放在可绘制文件夹中吗 – 2012-04-15 15:12:09

+0

你太快了,我没有时间编辑,是的,我的选择器在可绘制文件夹中。 – Shinao 2012-04-15 15:14:19