Эффект перелистывания для кнопок (одетых как карты) в iOS - PullRequest
0 голосов
/ 09 января 2012

ОБНОВЛЕНИЕ:

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

Вот небольшое видео, чтобы показать поведение, которое я только что объяснил: http://youtu.be/KrCmfyK3Z9Q?hd=1

Код довольно прост.Это выглядит так:

Инициализация на viwDidLoad:

- (void)viewDidLoad
{
    [super viewDidLoad];

    [self.view addSubview:optionOneBack];        
    [self.view addSubview:optionTwoBack];        
    [self.view addSubview:optionThreeBack];  
}

Метод переворачивания:

- (void)flip:(id)sender {

    // Identify the card that has been touched (button clicked) and assign the values for the animation
if ((sender == optionOneFront) || (sender == optionOneBack)){
    front = optionOneFront;
    back  = optionOneBack;    
}
else if ((sender == optionTwoFront) || (sender == optionTwoBack)){ 
    front = optionTwoFront;
    back  = optionTwoBack;
}
else {
    front = optionThreeFront;
    back  = optionThreeBack;
}     

// Flip the card with animation
BOOL optionFrontIsHidden = front.hidden;

UIView *transitionView;
transitionView = optionFrontIsHidden ? back : front;

[UIView transitionWithView:transitionView
                  duration:0.5 
                   options:UIViewAnimationOptionTransitionFlipFromLeft
                animations:nil
                completion:^(BOOL finished){
                    front.hidden = !optionFrontIsHidden;
                    back.hidden  = optionFrontIsHidden;
                }
];

}

Любая помощь, которую вы можете оказать, пока я продолжаю поиск,с благодарностью.

Спасибо заранее,

Хуан.

1 Ответ

0 голосов
/ 09 января 2012

Добро пожаловать в StackOverflow!

То, что вы можете сделать с UIView s, также можно сделать с UIButton s, так как они также являются потомками UIView s.Таким образом, ваш код перехода должен работать с минимальной адаптацией.

...