从另一个类动画工具栏

时间:2011-03-30 17:40:07

标签: iphone objective-c selector uitoolbar

我正在尝试从我的FirstViewController执行一个我的SecondViewController方法,它可以工作,该方法被称为cuz我在日志控制台中看到了我的消息(NSLog(@“printSomething”))。 问题是,在该方法中我试图移动UIToolBar,但事实并非如此。 如果我从他自己的viewController调用方法它可以工作,UIToolBar会移动,但是当我从另一个viewController调用它时...方法被执行,但是UIToolBar什么都不做

FirstViewController.m

UIBarButtonItem *flipButton = [[UIBarButtonItem alloc] 
                               initWithTitle:@"Opciones"                                            
                                       style:UIBarButtonItemStyleBordered 
                                      target:secondViewController
                                      action:@selector(showOptions)];

SecondViewController.m

-(void)showOptions{
NSLog(@"printSomething");
[self.toolBar setFrame:CGRectMake(0, 40, 320, 50)];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.35];
[self.toolBar setFrame:CGRectMake(0, 180, 320, 50)];
[self.toolBar setUserInteractionEnabled:YES];
[UIView commitAnimations];

}

感谢您的重播。

1 个答案:

答案 0 :(得分:0)

将您的NSLog语句更改为:

  NSLog(@"self.toolbar is 0x%x",self.toolBar);

并查看该值是否为非null。这是一个非常常见的问题 - 向null对象发送消息不是Objective-C中的运行时错误。