我正在一个需要录制和播放音频文件的应用程序中工作。我已经完成了与录音和播放有关的所有事情。这次我对UI相关的有点困惑,可能是第一次这样的困惑。.
根据上面的图片,我需要显示播放轨迹,到目前为止,我已经做了很多进度条和滑块来显示播放秒数或服务器响应。我正在检查自己以实现这一点,但我没有任何确切的想法要做。有人可以建议我实施相同的任何想法。你的建议对我的工作更有用。提前致谢。
我正在一个需要录制和播放音频文件的应用程序中工作。我已经完成了与录音和播放有关的所有事情。这次我对UI相关的有点困惑,可能是第一次这样的困惑。.
根据上面的图片,我需要显示播放轨迹,到目前为止,我已经做了很多进度条和滑块来显示播放秒数或服务器响应。我正在检查自己以实现这一点,但我没有任何确切的想法要做。有人可以建议我实施相同的任何想法。你的建议对我的工作更有用。提前致谢。
您可以使用我在下面发布的课程并在背景图像之间使用它,并使用暂停/播放按钮将其置于顶部。对于当前位置的资产(小环),您可能需要使用基本三角法。
一个简单的 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);
}