2012-04-15 69 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