How to use setImageTintList() on Android API < 21
You should use ImageViewCompat#setImageTintList()
to achieve this. On API 21+, it will use ImageView#setImageTintList()
as you would expect... and on older platform versions, it will delegate to AppCompatImageView
which provides a backported implementation.
ColorStateList csl = AppCompatResources.getColorStateList(context, R.color.my_color_state_list);
ImageViewCompat.setImageTintList(imageView, csl);
This is now available in Support Library 25.4.0. See Link
ImageViewCompat.setImageTintList(imageView, colorStateList)