2010-08-08 50 views
4

佈局xml如下。我有一個RelativeLayout,它包含一個TextView。 OnClick偵聽器在RelativeLayout上設置。 RelativeLayout有一個選擇器背景。我想要的是,當用戶點擊RelativeLayout時,RelativeLayout的背景應該改變,並且TextView的文本顏色也應該改變。儘管我爲TextView設置了顏色選擇器,但只有RelativeLayout上的選擇器起作用。 TextView上的顏色選擇器不起作用。如何在用戶單擊佈局時實現TextLayout的RelativeLayout背景和文本顏色的更改?謝謝。如何在OnClick偵聽器的父級佈局上設置TextView的顏色選擇器?

<RelativeLayout android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:background="@drawable/background_selector" 
     android:id="@+id/mylayout" 
> 
    <TextView android:id="@+id/mytextview" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:typeface="sans" 
     android:textSize="18sp" 
     android:textStyle="bold" 
     android:singleLine="true" 
     android:ellipsize="end" 
     android:textColor="@drawable/color_blue_selector" 
     /> 
</RelativeLayout> 
+0

你知道如何做到這一點嗎?我有同樣的問題,但我無法讓父母被點擊時textview改變其顏色。父級背景可以更改,但子級textview文本顏色不可以! – Thiago 2011-09-19 00:41:46

回答

0

也許你可以使用OnTouchListener和向下和向上事件改變文字顏色

+0

這假設您希望在點擊佈局時更改顏色 – Asahi 2010-08-08 20:21:06

+0

是的,假設是立場。但是這種方法實施起來很複雜。我只是想知道Android是否有很好的方法來支持這個功能。 – user256239 2010-08-08 20:29:13

1

迴應是不是隻是爲了

relativeLayout.setBackgroundResource(R.color.brown); 
textView.setTextColor(R.color.white); 

...具有資源棕色和白色的定義/values/color.xml定義爲

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <color name="white">#FFFFFF</color> 
    <color name="brown">#2E2B27</color> 
</resources> 
相關問題