I have the following code.
//Create a view to place repeated arrow in.
UIView *rootView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 60)];
//Add Repeated Arrows to the top of the view using a color pattern.
UIImage *arrowImage = [UIImage imageNamed:@"arrow-down"];
UIColor *repeatedArrowColor = [UIColor colorWithPatternImage:arrowImage];
CGRect repeatedArrowFrame = CGRectMake(0, 0, 320.0, [arrowImage size].height);
UIView *repeatedArrowView = [[UIView alloc] initWithFrame:repeatedArrowFrame];
[repeatedArrowView setBackgroundColor:repeatedArrowColor];
[rootView addSubview:repeatedArrowView];
The image being used is a png with arrows colored #323232. I verified this by right clicking the .app file and selecting Show Package Contents.

However when the pattern appears on the iOS simulator screen the color of the arrows are #262626 or #252525.

Has anyone run into this problem? If so, how did you fix, or did you work-around it?
In short everyone has these problems. If you open that image in Preview and use pixie (dev tool), you will see a different value for the pixels than is in the file for sure. Is that value different from what you see in the Simulator?
Do your png’s have a color profile embedded in them? It may help if there is one if you delete it (pngcrush will do this as an option). If there is none, or that does not fix it, then you may need to load your image first as a CGImageRef using:
and fool around with the color intent (first) and as a last option the decode array.