更改操作栏中一个文本的颜色

时间:2013-06-28 15:49:53

标签: android android-actionbar

我想在单击时更改文本的颜色。 到目前为止,我只想知道如何更改操作栏中所有项目的颜色,但不是某个项目的颜色。

这是我的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>

因此,我的操作栏历史记录,设置和演示中有三个属性。 如果我点击其中一个,它的颜色应该改变。

1 个答案:

答案 0 :(得分: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

}
});

修改

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>

然后在ActionBar中你可以使用

 style="@style/AppTheme"