This code looks perfectly fine to me -- I can't see any stray allocations, so it's possible that the warning is incorrect. It might be worth breaking up the code to localise the warning further, eg:
NSString* text = @"1.0,1.0,1.0";
NSArray *chunks = [text componentsSeparatedByString:@","];
NSString *redStr = [chunks objectAtIndex:0];
float red = [redStr floatValue]/256.0;
NSString *greenStr = [chunks objectAtIndex:1];
float green = [greenStr floatValue]/256.0;
NSString* blueStr = [chunksObjectAtIndex:2];
float blue = [blueStr floatValue]/256.0;
UIColor* rgb = [UIColor colorWithRed:red green:green blue:blue alpha:1.0];
return rgb;
This should at least identify exactly where the reported problem is. However, I'm almost certain there is no actual leak in this code.
A couple of other thoughts:
Is this the full extent of the code? Presumably you're not using a hardcoded @"1.0,1.0,1.0"
in the long run, so is there something else in the vicinity that may be causing the problem?
What's the method name? I've read hereabouts that the static analyser takes into account the NARC naming convention when trying to work out what the semantics are meant to be. I've no idea how true that is, nor how it might cause your problem here, but there's a very remote chance that this might be contributing to an erroneous leak warning.
EDIT: based on your additional info, I'm at a loss. All three of those snippets look OK to me. What are you using to detect these leaks -- static analysis or runtime? If the latter, are you running on the simulator or the device? Is any other information provided?