嘗試更改Android操作欄上homeAsUp按鈕的顏色失敗。我需要在運行時執行此操作。這裏是我得到的:嘗試更改ActionBar homeAsUp按鈕的顏色
@Override public boolean onCreateOptionsMenu(Menu menu){ //充氣菜單;這會將項目添加到操作欄(如果存在)。 getMenuInflater()。inflate(R.menu.menu_register_one,menu);
MenuItem homeItem = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
homeItem = menu.findItem(R.id.home);
} else {
homeItem = menu.findItem(R.id.up);
}
if (homeItem == null) {
// I always wind up with a null homeItem
Log.e(Constants.TAG, "null");
} else {
Drawable homeIcon = (Drawable) homeItem.getIcon();
homeIcon.mutate().setColorFilter(Color.parseColor(sharedVisualElements.primaryFontColorHexString()), PorterDuff.Mode.SRC_IN);
homeItem.setIcon(homeIcon);
}
// this part works just fine
MenuItem nextItem = menu.findItem(R.id.next);
Drawable newIcon = (Drawable)nextItem.getIcon();
newIcon.mutate().setColorFilter(Color.parseColor(sharedVisualElements.primaryFontColorHexString()), PorterDuff.Mode.SRC_IN);
nextItem.setIcon(newIcon);
return true;
}
這總是空狀態的homeItem捲起。我動作條看起來像這樣(兩個箭頭應該是綠色的和相同的大小):
那麼,你的答案將得到滿足,這就是我的建議。祝你好運和tc –
感謝你!它幾乎在那裏,但它使用不推薦的方法,所以我更新了它。 – Alex