实现上述自定义的返回键图标,且图片随按下图标而变化。
1 准备好俩个返回键图片,利用selector设置,在不同状态下,调用不同图片。
在drawble文件夹下定义一个menu_back_bg.xml文件:
<?xml version="1.0" encoding="UTF-8"?><selector xmlns:android="/apk/res/android"><item android:state_pressed="true" android:drawable="@drawable/menu_back_blue"/><itemandroid:drawable="@drawable/menu_back_gray"/></selector>
越在前面的item优先级越高,所以需要android:state_pressed这个item放在前面。
如果俩者顺序相反,将会一直显示menu_back_gray这个白色图片。
2.在values文件夹下的styles.xml文件中通过自定义android:homeAsUpIndicator的图片,达到更改返回键图标的作用
<style name = "ActionBarStyle" parent="@android:style/Widget.DeviceDefault.ActionBar"></style>
<style name="SimInfoTheme" parent="@android:style/Theme.DeviceDefault.Light">
<item name="android:actionBarStyle">@style/ActionBarStyle </item><item name ="android:homeAsUpIndicator">@drawable/menu_back_bg</item>
</style>
3.最后在AndroidManifest.xml文件夹中给该activity加上自定义的theme
<activityandroid:name="com.sec.android.app.simrecord.SimRecord"android:label="@string/app_name"android:theme="@style/SimRecordTheme"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity>
其实直接在activity中通过AvtionBar进行设置该图标也是可以的:
ActionBar mActionBar = getActionBar();mActionBar.setDisplayHomeAsUpEnabled(true);mActionBar.setHomeAsUpIndicator(R.drawable.menu_back_bg); //设置自定义的返回键图标