2013-06-28 54 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