Tint color is not correctly applied when using UIImageView with a template image

Originator:preble
Number:rdar://23759908 Date Originated:12/4/2015
Status:Duplicate/18448072 Resolved:
Product:iOS SDK Product Version:9.1
Classification: Reproducible:
 
Summary:
When using a template image in a UIImageView the tintColor should be applied. Instead, the template image is drawn in black.

This can be worked around in one of two ways:
- Re-assign the tintColor to the image view. 
- Call tintColorDidChange() on the image view.

Steps to Reproduce:
1. Obtain or create a template image: black on white.
2. Add the template image to Assets.xcassets.
3. Set the image "Render as" field in the attributes inspector to "Template Image".
3. Add an UIImageView to a view and set the image to the template image.
4. Confirm that the tint color of the UIImageView is blue (the current default).
4. Observe that it is rendered in black in the storyboard editor/interface builder.
5. Run the app. The image will still be black.

Expected Results:
The image should be drawn in the tint color because it is marked as a template image.

Actual Results:
The tint color is ignored, initially.

This issue can be worked around by re-assigning the tintColor at runtime, or by calling tintColor

Version:
iOS 9.1, Xcode 7.1.1 (7B1005)

Notes:
The attached project demonstrates the problem and workarounds.

Configuration:
Simulator or any iOS device.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!