Is a Right-to-Left progress bar possible on iOS?

You could try setting the transform property of your UIProgressView to a new CGAffineTransform that rotates the view by 180 degrees and flips it vertically (to preserve the "shininess") (see CGAffineTransformMake() and CGAffineTransformRotate()).

Something along the lines of:

UIProgressView *pv = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar];
pv.frame = CGRectMake(10, 100, 300, 11);
CGAffineTransform transform = CGAffineTransformMake(1, 0, 0, -1, 0, pv.frame.size.height); // Flip view vertically
transform = CGAffineTransformRotate(transform, M_PI); //Rotation angle is in radians
pv.transform = transform;
pv.progress = 0.5;

You can rotate the UIProgressView:

progressView.transform = CGAffineTransformMakeRotation(DegreesToRadians(180));

where DegreesToRadians is:

#define DegreesToRadians(d) ((d) * M_PI / 180.0)

To change the progress value, use positive numbers.


A simpler version is to flip it horizontally.

progressView.transform = CGAffineTransformMakeScale(-1.0f, 1.0f);