使用UIDynamicItemBehavior的方法在本地工作,但在从另一个类调用时则不工作

时间:2015-06-24 14:25:39

标签: ios objective-c uidynamicanimator

当我在本地调用此方法时,动画工作正常。但是当它从另一个类调用时,我收到一个Thread 1 SIGABRT错误:"由于未捕获的异常终止应用程序' NSInvalidArgumentException',原因:' *** - [ __NSPlaceholderArray initWithObjects:count:]:尝试从对象[0]'""

中插入nil对象
- (void)test{

animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];

settings_snap_behaviour = [[UISnapBehavior alloc] initWithItem:_orange_ball snapToPoint:CGPointMake(64, 237)];

UIDynamicItemBehavior *ballBehavior = [[UIDynamicItemBehavior alloc] initWithItems:@[_orange_ball]];

ballBehavior.elasticity = 1.0;

[animator addBehavior:ballBehavior];

[animator addBehavior:settings_snap_behaviour];

}

实际的方法调用正在工作,因为我用NSLog替换了方法的内容,并且它工作正常。从我的测试来看,它似乎与initWithItems特别相关:@ [_ orange_ball]

为什么它会在本地工作,而不是从另一个类调用时?我想我错过了一些明显的东西。

0 个答案:

没有答案