Width and height of progressView

2.5k Views Asked by At

How can I create progressView with width 100 and height 200. And rotate progressView on 90 degrees?

It does not work together. Or progressView is turned by 90 or change size

self.progressView.transform = CGAffineTransformMakeRotation(M_PI_2);
    CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 3.0f);
    _progressView.transform = transform;
3

There are 3 best solutions below

0
jp2g On BEST ANSWER

You need to chain your transformations. In your sample, the 2nd assignment to transform effectively overwrites the first one. This one works:

UIProgressView *progressBar = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar];
progressBar.frame = CGRectMake(50, 100, 100, 50);
CGAffineTransform t = CGAffineTransformMakeRotation(M_PI_2);
t = CGAffineTransformScale(t, 1.0f, 50.0f);
progressBar.transform = t;
[self.view addSubview:progressBar];
0
TheHungryCub On

I read about that somewhere...I think CGAffineTransform() works for that

[self.progressView setTransform:CGAffineTransformMakeScale(1.0, 2.0)];

For rotation

#define DEGREES_TO_RADIANS(angle) ((90) / 180.0 * M_PI)
[self.progressView setTransform:CGAffineTransformMakeRotation(DEGREES_TO_RADIANS(angle))];
0
drew.. On

Swift 4

progressView.transform = CGAffineTransform(scaleX: 1.0, y: 2.0)