I have found conflicting information on the availability of NSAttributedString for iOS versions before 6. It is something that would be really useful if it is somewhat backwards compatible.
Here it says it is available as of iOS 4:
Why No NSAttributedString on the iPhone?
On the Apple website it says iOS 6 and later: https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSAttributedString_Class/Reference/Reference.html
I tried implementing it in my code like so:
NSAttributedString *commentString = [[NSAttributedString alloc] initWithString:@"I really love raisins" attributes:@{NSForegroundColorAttributeName: [UIColor blackColor]}];
It works in iOS 6 but not when I try to run it in iOS 5 or iOS 5.1. I haven’t tested earlier versions.
Am I just trying to use features not included in older versions?
It has been around since iOS3.2. However the ability to use them within certain UI controls such as UILabel, UIButton, UITextView, etc is only available since iOS6. You can still use them using CoreText for < 6.0.