Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Анимирование CGPath 
:(
    Опции темы
olegarh
Дата 31.10.2011, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 6.2.2010

Репутация: нет
Всего: нет



Здравствуйте)

появилась небольшая проблема!
У меня есть два объекта UIButton которые соединены линией так:
Код

- (void)drawRect:(CGRect)rect {
    if (self.currentColor == nil)
        self.currentColor = [UIColor redColor];
    
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetLineWidth(context, 2.0);
    CGContextSetStrokeColorWithColor(context, currentColor.CGColor);
    
    CGContextSetFillColorWithColor(context, currentColor.CGColor);
    
    CGContextMoveToPoint(context, button.center.x, button.center.y);
    CGContextAddLineToPoint(context, button_t.center.x, button_t.center.y);
    CGContextStrokePath(context);
}


когда я перетаскиваю одну из кнопок то постоянно выполняю
 
Код

[self setNeedsDisplay]


т. е. линия движется за кнопкой... думаю вы поняли идею)

так вот! Нужно что бы когда я перетащил кнопку и отпустил тач то она вернулась на свое место
делаю так:
Код

- (void)animate:(UIButton *)buttonn withEvent:(UIEvent *)event{
    CALayer *welcomeLayer = buttonn.layer;
    CGFloat animationDuration = 1.7f;
    
    // Create a keyframe animation to follow a path back to the center
    CAKeyframeAnimation *bounceAnimation = [CAKeyframeAnimation animationWithKeyPath:@"position"];
    bounceAnimation.removedOnCompletion = NO;
    
    // Create the path for the bounces
    CGMutablePathRef thePath = CGPathCreateMutable();
    CGPathMoveToPoint  (thePath, NULL, buttonn.center.x, buttonn.center.y);
    CGPathAddLineToPoint(thePath, NULL, firstDragTouch.x, firstDragTouch.y);//firstDragTouch это координаты кнопки до перетаскивания
   
    
    bounceAnimation.path = thePath;
    bounceAnimation.duration = animationDuration;


    CGPathRelease(thePath);
    
    [welcomeLayer addAnimation:bounceAnimation forKey:nil];
    
    buttonn.center = firstDragTouch;
    
    [self setNeedsDisplay];
}


Получается, что линия не анимируется вместе с кнопкой, а перемещается куда надо только после анимации smile 
как сделать так, чтобы она анимировалась вместе с кнопкой) если не совсем понятно объяснил могу сделать скриншот)

Заранее спасибо
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | iOS | Следующая тема »


 




[ Время генерации скрипта: 0.0710 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.