动画子视图

时间:2011-06-14 21:09:57

标签: ios ipad uitableview uianimation

我的Ipad应用程序中有一个拆分视图控制器,其中详细视图包含UITableView的子视图。 我试图实现的功能是当按下子视图上的按钮(信息按钮)时,在子视图的相同位置获取信息视图。我需要通过动画获取此信息视图,并且该动画是按下信息按钮时,单独的子视图将翻转(UIAnimationOptionFlipFromRight)并且信息视图将显示...

这是尝试实现它的方法 -

-(void) showInfoView: (id)sender
{

    infoView = [[InfoViewController alloc] initWithNibName:@"ViewViewController" bundle:nil];
    infoView.view.frame = CGRectMake(250, 300, 200, 200);

    [UIView transitionWithView:self.view duration:1
                       options:UIViewAnimationOptionTransitionFlipFromRight 
                    animations:^{
                        [self.view addSubview:infoView.view];
                    } 
                    completion:nil];
}

当我运行模拟器并按下任何子视图上的信息按钮时,会发生的情况是动画完美发生,即子视图从右侧翻转,但infoView未显示。

如果有人能告诉我这里出错的地方会很棒。

2 个答案:

答案 0 :(得分:3)

在屏幕上执行动画的基本步骤如下:

  1. 创建视图。
  2. 将其移至初始(屏幕外)位置
  3. 添加到视图层次结构
  4. 执行动画。
  5. 好像你正在跳过第3步,可能是第2步。

答案 1 :(得分:0)

您是否尝试将子视图框设置为超级视图的框架,即

 info.View.frame = self.view.frame;