iPhone 4 воспроизводит анимацию при представлении - PullRequest
0 голосов
/ 08 октября 2011

Я хочу расположить кнопки в моем виде по кругу вокруг фиксированной точки.Я могу сделать это с помощью:

 button.layer.anchorPoint = CGPointMake(offsetX/button.frame.size.width, offsetY/button.frame.size.height);

button.transform = [self calculateLabelPositionFromFixedPointWithOffsetClockwiseInDegrees:commonAngleRatio*startSpacing*spacingRatio++];

, где convertLabelPositionFromFixedPointWithOffsetClockwiseInDegrees: angleInDegrees - это функция, которую я написал, чтобы дать мне CGAfflineTransformMakeRotation.

Мне бы хотелось, чтобы кнопки animateb или animatebв правильное положение при представлении. Я попытался поместить таймер, который будет вызывать анимацию, в "viewWillAppear", но, похоже, он не работает.

Редактировать: я создаю подкласс UIViewControllerдважды:

@interface HomeScreenAbstractParentController : UIViewController<UITableViewDelegate, UITableViewDataSource, UIGestureRecognizerDelegate, ContextActionDelegate, RemoteControlDelegate> {...}

и

@interface AnimatedController : HomeScreenAbstractParentController
{}

Внутри AnimatedController следующие методы не вызывают .У меня есть вид AnimatedController, добавленный к задней части homeScreenController (как в приложении Weather), и когда пользователь нажимает кнопку, вид переворачивается на его заднюю сторону.Задняя сторона должна анимировать элементы управления, когда это будет сделано.

-(void)viewWillAppear:(BOOL)animated

{
    NSLog(@"viewWillAppear");
    [super viewWillAppear:animated];

}


-(void)viewDidAppear:(BOOL)animated
{ 
    NSLog(@"viewDidAppear");
    [super viewDidAppear:animated];
    [self animateControls:nil];


}

В какой момент жизненного цикла приложения выше я бы запланировал таймер для анимации кнопок в положения?Это когда я переворачиваю взгляд?

1 Ответ

0 голосов
/ 08 октября 2011

в вашем контроллере:

-(void)viewDidAppear {

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1]; //amount of seconds animation should run
button.transform = [self calculateLabelPositionFromFixedPointWithOffsetClockwiseInDegrees:commonAngleRatio*startSpacing*spacingRatio++];
[UIView commitAnimations];


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