2013-02-26 2 views
0

Я работаю в приложении, так что мне нужно записать и воспроизвести аудиофайл. Я сделал все, что связано с записью и игрой. На этот раз я немного запутался в отношении пользовательского интерфейса, может быть, впервые это замешательство. Play back.Запрос реализации пользовательского интерфейса в IOS

В соответствии с приведенным выше изображением мне нужно показать дорожку воспроизведения, пока я много сделал с индикатором выполнения и слайдером, чтобы показать секунды воспроизведения или ответ сервера. Я проверяю себя, чтобы реализовать это, но я не получаю никакой конкретной идеи. Может ли кто-нибудь предложить мне идею реализовать то же самое. Ваши предложения более полезны для моей работы. Заранее спасибо.

+4

Введите понятие ** математике , ** особенно тригонометрические функции 'sin()' и 'cos()'. – 2013-02-26 05:48:34

+0

(Полезный комментарий) Спасибо за быстрый ответ. Я попытаюсь в этой перспективе. – ajay

ответ

1

Вы можете использовать класс, который я разместил ниже, и использовать его в промежутке между фоновым изображением и вверху с помощью кнопки паузы/воспроизведения. Для актива (маленькое кольцо) в текущей позиции вы можете использовать базовую тригонометрию.

Простой подкласс 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); 
} 
+0

+1 это потрясающе большие усилия ... – ajay

Смежные вопросы