我知道这已经被问了一百次,但是在其他问题上我找不到合适的答案.
我的问题是我的UIProgressView的高度.虽然一切都按照iOS6的预期运行,但现在在iOS7中没有任何事情发生.
我试过以下:
在iOS6中起到了一种魅力,但是在iOS7中,进度从一开始就设置为100%,或者条形图很薄.
> 2.使用UIProgressView外观的progressImage和trackImage属性设置布局
也不在iOS7下工作.这里的酒吧进度也从一开始就设置为100%.有些人写这个方式应该是可能的,但我不能确认iOS7.
> 3.使用initWithProgressStyle进行初始化,然后设置进度视图的框架
在iOS6和iOS7下不适合我.在iOS7中,酒吧非常苗条.
对我来说,现在这是非常令人沮丧的,因为酒吧是100%或者是超大型的.任何人都可以给我一个建议,以达到我的进步意见的旧版本.我认为这是可能的,因为如果我在iPhone上看到我的Spotify应用程序(iOS7),进度视图就像以前一样.
非常感谢你!
解决方法
那么iOS6 UIProgressView和iOS7 UIProgressView具有不同的内部子视图结构的问题就是接缝. iOS6进度视图是没有子视图(或一些小视图)的单个视图,iOS7进度视图没有额外的子视图来绘制进度条和背景.
如果您删除iOS7上的所有UIProgressView子视图,而不是drawRect:方法将在iOS6上与以前一样工作,但是您将完全负责绘制进度视图内容,包括进度条和背景.
- (id) initWithCoder: (NSCoder*)aDecoder { if(self=[super initWithCoder: aDecoder]) { // Also you can setup height of your progress here // self.frame = CGRectMake(0,100,yourHeight); NSArray *subViews = self.subviews; for(UIView *view in subViews) { [view removeFromSuperview]; } } return self; }