objective-c – iOS7中的自定义UIProgressView不可能?

前端之家收集整理的这篇文章主要介绍了objective-c – iOS7中的自定义UIProgressView不可能?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道这已经被问了一百次,但是在其他问题上我找不到合适的答案.

我的问题是我的UIProgressView的高度.虽然一切都按照iOS6的预期运行,但现在在iOS7中没有任何事情发生.

我试过以下:

> 1.在drawRect方法中设置自定义布局:

在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;
}
原文链接:https://www.f2er.com/c/114229.html

猜你在找的C&C++相关文章