iOS 7中的进度视图高度

我想增加在iOS 6和以下的进展视图的高度,我正在做这个使用appearence方法

UIImage *progressImage = [[UIImage imageNamed:@"sliderbk-progress.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 4, 0, 5)]; [[UIProgressView appearance] setProgressImage:progressImage]; 

但现在在iOS7这个代码不工作,我甚至尝试给下面的代码,但没有用。 任何帮助将是有益的。 谢谢

 [[UIProgressView appearance] setFrame:CGRectMake(20, 100, 280, 100)]; 

如果我正确地理解了这个问题,听起来像是想要增加iOS7中进度视图的高度,以前在iOS6中使用的代码不再有效。

我最近必须解决类似的问题,我通过在Interface Builder中为进度视图添加一个约束并通过约束来显式设置高度。 此解决scheme将需要使用自动布局,所以请确保您已打开。

高度属性

如图所示:Size Inspector上的“Height”属性对于Progress View来说显然是灰色的,不能改变 – 但是我已经在Progress View本身上定义了一个约束,并将约束的高度设置为50点,这实际上反映在IB。

从我见过的iOS6进度条有一个静态高度值,所以如果你也想支持iOS6,那么另一种方法将是必要的。

而其他人则报告CGAffineTransform()也适用:

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

使用此代码: –

  CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 5.0f); progressView.transform = transform; 

已经在这里回答如何增加UIProgressView的高度

 @implementation UIProgressView (customView) - (CGSize)sizeThatFits:(CGSize)size { CGSize newSize = CGSizeMake(self.frame.size.width,9); return newSize; } @end 

下面是user3189408的swift版本和Rushabh为新开发人员和像我这样的快速爱好者提供的很好的解决scheme。 testingiOS 7 + / Swift 2.0。

  progressView.transform = CGAffineTransformMakeScale(1.0, 5.0) 

Swift 3.x

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

你可以注意到frame不能被appearance访问器设置。 您必须分别在每个进度视图上进行设置。

通常,高度是根据进度条风格设置的。

 - (id)initWithProgressViewStyle:(UIProgressViewStyle)style; // sets the view height according to the style