Note that there are some explanatory texts on larger screens.

plurals
  1. POUITabBar – setItems:animated: Crashes
    text
    copied!<p>So I have a UITabView Controller that was created in interface builder. The title and image properties of UITabBarItem were set in IB. A Tab Bar Controller object is present in the xib and all necessary connections are made. I am able to call simple commands such as </p> <p>[tabBarController setSelectedIndex:1]; </p> <p>Everything works fine but when I set the 'items' property, I crash. Maybe I am having a memory management problem?</p> <p>Here is the crashing code:</p> <pre><code>NSMutableArray *modifiedItems = [[tabBarController.tabBar items] mutableCopy]; [modifiedItems removeObjectAtIndex:2]; NSArray *newItems = [[NSArray alloc] initWithArray:modifiedItems]; --&gt;[tabBarController.tabBar setItems:newItems animated:NO]; </code></pre> <p><strong>* Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Directly modifying a tab bar managed by a tab bar controller is not allowed.' *</strong> Call stack at first throw:</p> <pre><code>0 CoreFoundation 0x02b9bb99 __exceptionPreprocess + 185 1 libobjc.A.dylib 0x02ceb40e objc_exception_throw + 47 2 CoreFoundation 0x02b54238 +[NSException raise:format:arguments:] + 136 3 CoreFoundation 0x02b541aa +[NSException raise:format:] + 58 4 UIKit 0x005f7019 -[UITabBar setItems:animated:] + 2037 5 Zag Map 0x00003422 -[ZagMapAppDelegate iPodTouchRemoval] + 270 6 Zag Map 0x00002eea -[ZagMapAppDelegate applicationDidFinishLaunching:] + 551 7 UIKit 0x003faf80 -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 1252 8 UIKit 0x003fd3b0 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 346 9 UIKit 0x004073ec -[UIApplication handleEvent:withNewEvent:] + 1958 10 UIKit 0x003ffb3c -[UIApplication sendEvent:] + 71 11 UIKit 0x004049bf _UIApplicationHandleEvent + 7672 12 GraphicsServices 0x03357822 PurpleEventCallback + 1550 13 CoreFoundation 0x02b7cff4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52 14 CoreFoundation 0x02add807 __CFRunLoopDoSource1 + 215 15 CoreFoundation 0x02adaa93 __CFRunLoopRun + 979 16 CoreFoundation 0x02ada350 CFRunLoopRunSpecific + 208 17 CoreFoundation 0x02ada271 CFRunLoopRunInMode + 97 18 UIKit 0x003fcc6d -[UIApplication _run] + 625 19 UIKit 0x00408af2 UIApplicationMain + 1160 20 Zag Map 0x00002ca0 main + 102 21 Zag Map 0x00002c31 start + 53 terminate called after throwing an instance of 'NSException' </code></pre> <p>My NSArray and NSMutableArray appear to be fine considering they came straight out of the functioning UITabBar. It returned three objects, then two. I hope I'm just overlooking something stupid here. Any ideas I would really appreciate.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload