Как воссоздать анимацию в приложении Notes для iPad? - PullRequest
3 голосов
/ 03 октября 2010

Когда вы используете приложение Notes iPad (от Apple) в альбомном режиме, вы видите список заметок слева. Если вы выбираете заметку, вы видите небольшую анимацию, которая выглядит так, как будто кто-то помечает заметку красным карандашом.

У меня уже есть изображение, которое выглядит как этот красный круг, но как мне его так оживить? Заранее спасибо.

Редактировать 1
Вот ссылка на рисунок: красный круг

Ответы [ 2 ]

2 голосов
/ 04 октября 2010

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

NSArray* imageFrames = [NSArray arrayWithObjects:[UIImage imageNamed:@"frame1.png"],
                                                 [UIImage imageNamed:@"frame2.png"],
                                                 [UIImage imageNamed:@"frame3.png"],
                                                 [UIImage imageNamed:@"frame4.png"],
                                                 nil];
UIImageView* imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,100,100)];
[imageView setAnimationImages:imageFrames];
[imageView setAnimationDuration:10];
[imageView setAnimationRepeatCount:3];

Приведенное выше создает UIImageView с 4 кадрами, которые анимируются в течение 10 секунд.Анимация повторяется 3 раза.

См. Документацию UIImageView для получения дополнительной информации.

Очевидно, что для анимации вам действительно потребуется серия изображений.

1 голос
/ 03 октября 2010
- (void)moveRedCircle {
    UIImageView *redcircle = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:@"redcircle.png"]];
    redcircle.bounds.origin = CGPointMake(x, y);
    [self.view addSubview:redcircle];
    [UIView animateWithDuration:4 animations:^{
        redcircle.bounds.origin = CGPointMake(x, y);
    }];
}

Замените первые x и y тем, где вы хотите, чтобы изначально был круг.Замените последние x и y на начало координат, куда вы хотите их переместить.

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