2013-06-28 49 views
0

我想在單擊文本時更改文本的顏色。 到目前爲止,我只想出如何更改操作欄中所有項目的顏色,但不是針對某個項目。更改操作欄中一個文本的顏色

這是我actionbar.xml:

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 
<item 
    android:id="@+id/delObjs" 
    android:showAsAction="always" 
    android:title="@string/history"/> 
<item 
    android:id="@+id/settings" 
    android:showAsAction="ifRoom" 
    android:title="@string/settings"/> 
<item android:id="@+id/demo" 
    android:showAsAction="always" 
    android:title="@string/demo" 
    ></item> 

因此,有我的動作條記錄,設定和演示三個屬性。 如果我點擊其中一個,它的顏色應該改變。

+0

你能更具體:哪些文本是你想改變嗎?這是你的佈局中的東西嗎?它是否在操作欄上? – Karakuri

回答

0

如果您正在討論Textview,您可以簡單地在Textview上應用onClickListener並更改onClick方法中的顏色。

TextView textView = (TextView) findViewById(R.id.textview_id); 

textView.setOnClickListener(new OnClickListener() { 

public void onClick(View view) { 

    //Your code, you can use a switch if you have multiple textviews 

} 
}); 

EDIT

RES /值/ colors.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

<color name="orange_base">#BD9B35</color> 
<color name="orange_stroke">#BA8C00</color> 
<color name="orange_start">#E0C265</color> 
<color name="orange_end">#DEAA10</color> 

</resources> 

和用於選擇一個例子是

RES /抽拉/ anyname.xml

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

將你的風格添加進

<style name="AppTheme" parent="android:Theme.Holo"> 
    <item name="android:actionMenuTextColor">@color/action_item_text_color</item> 
</style> 

然後在動作條,你可以只使用

style="@style/AppTheme" 
+0

不,關於操作欄中的文字,如設置,歷史。 如果我點擊設置,我希望單詞改變它的顏色。 –

+0

然後你可以聲明一個樣式並使用選擇器來做到這一點 – Eriz

+0

aaha ....試試這個http://stackoverflow.com/a/14197612/2468752 – Eriz