iOS7崩溃 – [__NSPlaceholderDictionary initWithObjects

通过我的iOS6应用程序,并试图修复iOS7的一切。 在整个我的应用程序,我得到的错误:

-[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0] 

这里是这个代码的堆栈跟踪:

 NSString *shareString = [NSString stringWithFormat:@"I ... %@", self.booking.venue.name]; NSArray *activityItems = [NSArray arrayWithObjects:shareString, nil]; UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil]; [self presentViewController:activityViewController animated:YES completion:nil]; *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]' *** First throw call stack: ( 0 CoreFoundation 0x03bc45e4 __exceptionPreprocess + 180 1 libobjc.A.dylib 0x032d38b6 objc_exception_throw + 44 2 CoreFoundation 0x03b8a536 -[__NSPlaceholderDictionary initWithObjects:forKeys:count:] + 390 3 CoreFoundation 0x03bb8029 +[NSDictionary dictionaryWithObjects:forKeys:count:] + 73 4 UIKit 0x0141eea4 -[UIButton _intrinsicSizeWithinSize:] + 1255 5 UIKit 0x017ee81d -[UIView(UIConstraintBasedLayout) intrinsicContentSize] + 51 6 UIKit 0x017eeebf -[UIView(UIConstraintBasedLayout) _generateContentSizeConstraints] + 36 7 UIKit 0x017eeb50 -[UIView(UIConstraintBasedLayout) _updateContentSizeConstraints] + 511 8 UIKit 0x017f4e8f -[UIView(AdditionalLayoutSupport) updateConstraints] + 110 9 UIKit 0x0141dab7 -[UIButton updateConstraints] + 54 10 UIKit 0x017f4728 -[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 239 11 UIKit 0x017f48a6 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 122 12 UIKit 0x017f4827 __UIViewRecursionHelper + 40 13 CoreFoundation 0x03b65dc9 CFArrayApplyFunction + 57 14 UIKit 0x017f46cc -[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 147 15 UIKit 0x017f48a6 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 122 16 UIKit 0x017f4827 __UIViewRecursionHelper + 40 17 CoreFoundation 0x03b65dc9 CFArrayApplyFunction + 57 18 UIKit 0x017f46cc -[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 147 19 UIKit 0x017f48a6 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 122 20 UIKit 0x017f4827 __UIViewRecursionHelper + 40 21 CoreFoundation 0x03b65dc9 CFArrayApplyFunction + 57 22 UIKit 0x017f46cc -[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 147 23 UIKit 0x017f48a6 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 122 24 UIKit 0x017f4827 __UIViewRecursionHelper + 40 25 CoreFoundation 0x03b65dc9 CFArrayApplyFunction + 57 26 UIKit 0x017f46cc -[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 147 27 UIKit 0x017f48a6 -[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPass:] + 122 28 UIKit 0x017e8f48 __62-[UIWindow(UIConstraintBasedLayout) updateConstraintsIfNeeded]_block_invoke + 43 29 Foundation 0x02e7a3ec -[NSISEngine withBehaviors:performModifications:] + 107 30 Foundation 0x02d0a145 -[NSISEngine withAutomaticOptimizationDisabled:] + 48 31 UIKit 0x017e8c60 -[UIWindow(UIConstraintBasedLayout) updateConstraintsIfNeeded] + 225 32 UIKit 0x017f4f06 -[UIView(AdditionalLayoutSupport) _updateConstraintsAtWindowLevelIfNeeded] + 85 33 UIKit 0x011ed6ef -[UIView(Hierarchy) layoutBelowIfNeeded] + 348 34 UIKit 0x018a3def -[_UIBackdropContentView backdropView:recursivelyUpdateMaskViewsForView:] + 56 35 UIKit 0x018a4240 -[_UIBackdropContentView didMoveToWindow] + 273 36 UIKit 0x011f5be7 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 1689 37 UIKit 0x011f5847 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 761 38 UIKit 0x011f5847 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 761 39 UIKit 0x011f5847 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 761 40 UIKit 0x011f5847 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 761 41 UIKit 0x011ed070 __45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke + 162 42 UIKit 0x011ecef8 -[UIView(Hierarchy) _postMovedFromSuperview:] + 260 43 UIKit 0x011f8031 -[UIView(Internal) _addSubview:positioned:relativeTo:] + 1847 44 UIKit 0x011eb521 -[UIView(Hierarchy) addSubview:] + 56 45 UIKit 0x012861f8 -[UITransitionView transition:fromView:toView:removeFromView:] + 1205 46 UIKit 0x018add65 -[UIViewControllerBuiltinTransitionViewAnimator animateTransition:] + 463 47 UIKit 0x0153a37d __101-[UIWindowController transition:fromViewController:toViewController:target:didEndSelector:animation:]_block_invoke_2 + 1577 48 UIKit 0x011acd33 ___afterCACommitHandler_block_invoke + 15 49 UIKit 0x011accde _applyBlockToCFArrayCopiedToStack + 403 50 UIKit 0x011acb0a _afterCACommitHandler + 532 51 CoreFoundation 0x03b8c53e __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 30 52 CoreFoundation 0x03b8c48f __CFRunLoopDoObservers + 399 53 CoreFoundation 0x03b6a3b4 __CFRunLoopRun + 1076 54 CoreFoundation 0x03b69b33 CFRunLoopRunSpecific + 467 55 CoreFoundation 0x03b6994b CFRunLoopRunInMode + 123 56 GraphicsServices 0x04fbb9d7 GSEventRunModal + 192 57 GraphicsServices 0x04fbb7fe GSEventRun + 104 58 UIKit 0x0119094b UIApplicationMain + 1225 59 BottlesTonight 0x000030ad main + 141 60 libdyld.dylib 0x037b8725 start + 0 ) libc++abi.dylib: terminating with uncaught exception of type NSException 

这个代码仍然在iOS6上完美工作,我没有看到任何错误。 点击一个UIButton就会发生这种情况,点击Card.io也会发生这种情况,允许用户input卡信息。 在iOS7上构build我的应用程序之前,在iOS7 beta上运行iOS6应用程序之前,我仍然收到了这个错误,但在更多的地方。 现在我为iOS7构build了一些地方,但这些地方仍然存在。 任何帮助将不胜感激,这是提交iOS7之前的所有。

将此举报告为Apple的bug: bugreport.apple.com 。 除非你使用布局约束有什么错误,否则这是苹果代码中的一个错误。