I have an imageView that i want to display a little icon of the country that you are currently in. I can get the country code, but problem is i can’t dynamically change the imageView resource. My image files are all lowercase (Example: country code=US, image file=us)
My code (countryCode is the current countryCode in uppercase letters):
String lowerCountryCode = countryCode.toLowerCase(); String resource = "R.drawable." + lowerCountryCode; img.setImageResource(resource);
Now, of course this will not work because setImageResource wants an int, so how can i do this?
Thanks in advance 😀
One easy way to map that country name that you have to an
int to be used in the
setImageResource method is:
int id = getResources().getIdentifier(lowerCountryCode, "drawable", getPackageName()); setImageResource(id);
But you should really try to use different folders resources for the countries that you want to support.
This is how to set an image into
ImageView using the setImageResource() method:
ImageView myImageView = (ImageView)v.findViewById(R.id.img_play); // supossing to have an image called ic_play inside my drawables. myImageView.setImageResource(R.drawable.ic_play);
you use that code
ImageView ivCard = new ImageView; @override protected void onCreate(Bundle savedInstanceState) ivCard=(ImageView)findViewById(R.id.imageView1);
you may try this:-