以下に投稿したクラスを使用して、背景画像の間に使用し、一時停止/再生ボタンを上に置くことができます。現在の位置にあるアセット(小さなリング)には、基本的な三角法を使用することをお勧めします。
進行状況に応じてリングを描画する単純なUIViewサブクラス。円の半径の構成などによって、ある程度の愛情が必要になる場合があります。
CircleProgressView.h
@interface CircleProgressView : UIView
{
double progress_;
UIColor *color_;
}
- (void)setProgress:(float)progress;
- (void)setColor:(UIColor *)color;
@end
CircleProgressView.m
@implementation CircleProgressView
- (void)setProgress:(float)progress
{
_progress_ = progress;
[self setNeedsDisplay];
}
- (void)setColor:(UIColor *)color
{
color_ = color;
}
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 6);
CGContextSetStrokeColorWithColor(context, color_.CGColor);
CGContextAddArc(context,
self.frame.size.width / 2.0,
self.frame.size.height / 2.0,
self.frame.size.width / 2 - 4.5, 0.0, M_PI * progress_ * 2.0, NO);
CGContextStrokePath(context);
}