键盘搞乱了我在控制器中的视图动画

时间:2013-11-06 17:51:22

标签: ios objective-c ipad uiview uiviewanimation

我正在尝试创建一个简单的绘图应用程序..它有一组控件可以通过按UIButton透明隐藏或显示。问题出在键盘上。每次键盘出现时,都要键入标题或创建文本框..动画自动重置和撤消...我不知道为什么会发生这种情况。

请帮助我......将控件上下移动的代码发布在这里: -

- (void) hideShowTopBarAnimated
{
    if(self.isTopBarHidden == NO)
    {
        self.hideShowButtonPointingUp.alpha = 0.0;
        [UIView animateKeyframesWithDuration:0.3
                                       delay:0.0
                                     options:UIViewKeyframeAnimationOptionBeginFromCurrentState
                                  animations:^(void){
                                      CGPoint center;
                                      center = self.topBarImage.center;
                                      center.y -= 80;
                                      self.topBarImage.center = center;

                                      center = self.titleBar.center;
                                      center.y -= 80;
                                      self.titleBar.center = center;

                                      center = self.backgroundPicker.center;
                                      center.y -= 80;
                                      self.backgroundPicker.center = center;

                                      center = self.writingPicker.center;
                                      center.y -= 80;
                                      self.writingPicker.center = center;

                                      center = self.backgroundLabel.center;
                                  center.y -= 80;
                                  self.backgroundLabel.center = center;

                                  center = self.penLabel.center;
                                  center.y -= 80;
                                  self.penLabel.center = center;

                                  center = self.writeDrawToggle.center;
                                  center.y -= 80;
                                  self.writeDrawToggle.center = center;

                                  center = self.invisibleBackgroundButton.center;
                                  center.y -= 80;
                                  self.invisibleBackgroundButton.center = center;

                                  center = self.invisibleShowHideUIButton.center;
                                  center.y -= 80;
                                  self.invisibleShowHideUIButton.center = center;

                              }
                              completion:^(BOOL finished){
                                  self.hideShowButtonPointingDown.alpha = 1.0;

                              }];


    self.isTopBarHidden = YES;
}
else if(self.isTopBarHidden == YES)
{
    self.hideShowButtonPointingDown.alpha = 0.0;
    [UIView animateKeyframesWithDuration:0.3
                                   delay:0.0
                                 options:UIViewKeyframeAnimationOptionBeginFromCurrentState
                              animations:^(void){
                                  CGPoint center;
                                  center = self.topBarImage.center;
                                  center.y += 80;
                                  self.topBarImage.center = center;

                                  center = self.titleBar.center;
                                  center.y += 80;
                                  self.titleBar.center = center;

                                  center = self.backgroundPicker.center;
                                  center.y += 80;
                                  self.backgroundPicker.center = center;

                                  center = self.writingPicker.center;
                                  center.y += 80;
                                  self.writingPicker.center = center;

                                  center = self.backgroundLabel.center;
                                  center.y += 80;
                                  self.backgroundLabel.center = center;

                                  center = self.penLabel.center;
                                  center.y += 80;
                                  self.penLabel.center = center;

                                  center = self.writeDrawToggle.center;
                                  center.y += 80;
                                  self.writeDrawToggle.center = center;

                                  center = self.invisibleBackgroundButton.center;
                                  center.y += 80;
                                  self.invisibleBackgroundButton.center = center;

                                  center = self.invisibleShowHideUIButton.center;
                                  center.y += 80;
                                  self.invisibleShowHideUIButton.center = center;

                              }
                              completion:^(BOOL finished){

                                  self.hideShowButtonPointingUp.alpha = 1.0;
                              }];

    self.isTopBarHidden = NO;
}
}

0 个答案:

没有答案