如何更改背景进度从颜色到图像的圆圈?

时间:2014-08-05 10:24:10

标签: ios xcode uiimageview uiprogressview

我想制作一个progressView圈子。我按照一个使用背景颜色的示例代码,但现在我想使用背景图像而不是背景颜色。

这是当前的示例代码:Sample Code

请参阅此示例代码并指导我如何将背景颜色更改为背景图像(项目中有两个图像:background.png& front.png)。

感谢。

这是我的代码:

KKProgressTimer.m

- (void)setupParams {
    self.backgroundColor = [UIColor clearColor];

    self.frameWidth = 3;
    self.progressColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background"]];
    self.progressBackgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"front"]];
    self.circleBackgroundColor = [UIColor whiteColor];
}

在运行项目时,我的背景不适合我的观点!!!

2 个答案:

答案 0 :(得分:0)

该属性在那里定义用于更改背景颜色@property(nonatomic, strong) UIColor *progressBackgroundColor;,并且您想要使用该图像,然后UIColor类具有您可以与图像一起使用的方法+ (UIColor *)colorWithPatternImage:(UIImage *)image;

self.circleBackgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background"]];

答案 1 :(得分:0)

您无法更改UIActivityView,但可以使用轮播UIImageView替换它。创建一个类别并按照以下步骤操作:

- (void) setRotation:(float)duration
{
    CABasicAnimation *rotation;
    rotation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
    rotation.fromValue = [NSNumber numberWithFloat:0];
    rotation.toValue = [NSNumber numberWithFloat:(2*M_PI)];
    rotation.duration = duration; // Speed
    rotation.repeatCount = HUGE_VALF; // Repeat forever. Can be a finite number.
    [self.layer addAnimation:rotation forKey:@"Spin"];
}

你可以制作一个UIImageView并像这样旋转它:

[self.imgProgress setRotation:1];