我正在尝试从我的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];
}
感谢您的重播。
答案 0 :(得分:0)
将您的NSLog语句更改为:
NSLog(@"self.toolbar is 0x%x",self.toolBar);
并查看该值是否为非null。这是一个非常常见的问题 - 向null对象发送消息不是Objective-C中的运行时错误。