2012-03-30 17 views
0

我想在我的项目中包含翻转视图。我做了这样的,但不能正常工作 和二级视图包含教职员用导航栏在iphone中翻转视图

UIBarButtonItem *flipButton = [[UIBarButtonItem alloc] 
           initWithTitle:@"Flip"            
           style:UIBarButtonItemStyleBordered 
           target:self 
           action:@selector(flipView)]; 

self.navigationItem.leftBarButtonItem = flipButton; 
UIBarButtonItem *returnButton = [[UIBarButtonItem alloc] 
           initWithTitle:@"return"            
           style:UIBarButtonItemStyleBordered 
           target:self 
           action:@selector(returnView)]; 

self.navigationItem.leftBarButtonItem = returnButton; 

的图像和我这样设置

- (void)flipView{ 
    [UIView beginAnimations:nil context:nil]; 
    [UIView setAnimationDuration:1.0]; 
    [UIView setAnimationTransition:UIViewAnimationOptionTransitionFlipFromTop 
          forView:[self view] 
          cache:YES]; 
    [self.view addSubview:secondaryView]; 
    [UIView commitAnimations]; 
} 


- (void)returnView { 
    [UIView beginAnimations:nil context:nil]; 
    [UIView setAnimationDuration:1.0]; 
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft 
          forView:[self view] 
          cache:YES]; 
    [secondaryView removeFromSuperview]; 
    [UIView commitAnimations]; 
} 
+0

那么究竟是什么问题..? – 2012-03-30 12:59:08

+0

你可以调用self.navigationItem.leftBarButtonItem = flipButton;然后你调用self.navigationItem.leftBarButtonItem = returnButton;所以,我的理解是,你只有returnButton,这意味着-flipView永远不会被调用。 – Canopus 2012-03-30 13:22:04

+0

@AdilSoomro翻转按钮不可见返回按钮是可见insted的翻转..每次它执行返回视图动作 – krishna 2012-03-30 13:25:50

回答

0

确实如你所说的那样,没有任何反应,因为你没有机会做翻转。

尝试移动这些行:

UIBarButtonItem *returnButton = [[UIBarButtonItem alloc] 
           initWithTitle:@"return"            
           style:UIBarButtonItemStyleBordered 
           target:self 
           action:@selector(returnView)]; 

self.navigationItem.leftBarButtonItem = returnButton; 

flipView内,之后或动画之前。并复制这些其他行:

UIBarButtonItem *flipButton = [[UIBarButtonItem alloc] 
           initWithTitle:@"Flip"            
           style:UIBarButtonItemStyleBordered 
           target:self 
           action:@selector(flipView)]; 

self.navigationItem.leftBarButtonItem = flipButton; 

里面的returnView。你会看到变化。

我希望能对您有所帮助!

0

设置[self.navigationController pushViewController:self.secondaryView animated:YES];

,而不是[self.view addSubview:secondaryView];,写

行动
forView:self.navigationController.view cache:NO]; 

而不是forView:[self view]。 `