Напишу на C#, на Java, думаю, сами перепишите, там точно так же
убираем цвет
<solid android:color="#FF0000" />
из шейпа.
в коде меняем через SetColorFilter, он вроде как уже deprecated, но у вас min API 14:
imgview.Background.SetColorFilter(Resources.GetColor(Resource.Color.blue), PorterDuff.Mode.Add);
соответственно в Colors.xml нужно определить цвета:
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
<color name="blue">#0000ff</color>
</resources>
Соответственно когда нужно через ClearColorFilter() убираете цвет и меняете на другой.