Насколько сложно создать простой эффект ластика для основной анимации или основной графики? - PullRequest
0 голосов
/ 09 декабря 2011

Привет, я хотел бы создать анимацию ластика или основную графику, которая выглядит как стирание текущего содержимого, и добавить новый контент на элементе uibutton, когда я нажимаю на вид или кнопку.

это сложно сделать? Любой учебник или веб-ссылка, чтобы показать, как это сделать?

enter image description here

1 Ответ

3 голосов
/ 09 декабря 2011

Привет, мы можем использовать эту функцию ластика с основной анимацией в нашем приложении, как показано ниже:

        CGPoint currentPoint = [touch locationInView:imgBlankView];

        UIGraphicsBeginImageContext(self.view.frame.size);
        [imgBlankView.image drawInRect:CGRectMake(0, 0, self.view.frame.size.width, imgBlankView.frame.size.height)];

        CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
        CGContextSetLineWidth(UIGraphicsGetCurrentContext(),lineWidth);
        CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeClear);

        CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), red, green, blue, 1.0);
        CGContextBeginPath(UIGraphicsGetCurrentContext());  
        CGContextSetShouldAntialias(UIGraphicsGetCurrentContext(), YES);

        CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint1.x, lastPoint1.y);
        CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), currentPoint.x, currentPoint.y);
        CGContextStrokePath(UIGraphicsGetCurrentContext());
        imgBlankView.image = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();
        lastPoint1 = currentPoint;

Используйте этот код для удаления утопления, которое вы рисуете с помощью основной анимации, такой как круг, прямоугольник или любой CALayer, например, утопления с этим кодом.

Поместите этот код в свой метод сенсорного перемещения, и пользователь прикасается к представлению, которое он стирает, с этим кодом наслаждайтесь стиранием функциональности с этим кодом.

...