If you're using a CircledImageView you can set the tint of the icon directly on the view using setImageTint(int tint)
.
If you're using a traditional ImageView you need to create a Drawable from your icon resource and apply the tint to it, and then set it to the view:
Drawable iconDrawable = mContext.getResources().getDrawable(R.drawable.icon, mContext.getTheme());
iconDrawable.setTint(mContext.getColor(R.color.bg_color, mContext.getTheme()));
iconView.setImageDrawable(iconDrawable);
EDIT: To access icons in a menu you can do something like this when it's created:
for(int i = 0; i < menu.size(); i++) {
Drawable iconDrawable = menu.getItem(i).getIcon();
iconDrawable.setTint(mContext.getColor(R.color.bg_color, mContext.getTheme()));
}