Как создать эффект звонилки в iPhone? - PullRequest
0 голосов
/ 09 марта 2011

Я хочу создать эффект номеронабирателя телефона, так как я могу сделать этот эффект ?.Есть ли какие-либо API для этого доступны?Я установил изображения в представлении изображения, изображения в форме круга.Теперь я хочу коснуться и перетащить изображения. Если бы я перетаскивал отдельные изображения, он переместил бы все изображения по определенному пути.Пожалуйста, смотрите мой снимок экрана.

enter image description here

Пожалуйста, помогите мне.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 10 марта 2011

Вы можете использовать UIPanGestureRecognizer для обнаружения панорамирования / перетаскивания на вашем родительском изображении. Затем просто примените CGAffineTransform, чтобы повернуть это представление в зависимости от положения пальца пользователя.

// Calculate the rotation you want
CGFloat radians = degreesToRadians(position*totalRotation);
[dialerView setTransform:CGAffineTransformMakeRotation(radians)];

Вам необходимо выяснить, как рассчитать положение и итоговое вращение.

0 голосов
/ 09 марта 2011
  1. Создайте вид (вид A) и установите цвет фона на прозрачный.

  2. Добавление изображений в качестве подпредставления для просмотра A

  3. Переопределить следующий метод в представлении A:

    - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event {
    
    // Only return YES if the touch is in one of the subviews 
    //   - we dont care about touches that are just in this view
    
    for (UIView* view in self.subviews) {
    
        // We need to convert the point into the recievers co-ordinate system
        // (as per the documentation on 'pointInside:withEvent')
    
        CGPoint convertedPoint = [self convertPoint:point toView:view];
    
        if ([view pointInside:convertedPoint withEvent:event]) {
            return YES;
        }
    }
    return NO;
    }
    
  4. Реагирование на прикосновения, перемещенные для изменения центральной точки обзора A. Если вам нужно вращаться вокруг точки, вам придется использовать некоторые триггеры / математические выражения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...