'NsinvalidargumentException', Grund: '-[__ nsarrayi linkscapwidth
-
27-09-2019 - |
Frage
Ich habe drei Ansichten, die aus der UitableViewController -Klasse erben. Die erste zeigt eine Liste von Standorten, die zweite zeigt eine Karte mit einer Anmerkung, die den Ort der Zeile darstellt, die bei der ersten Ansicht ausgewählt wurden. Die letzte zeigt Informationen zum Ort (Adresse, Bild, ...). Manchmal, wenn ich den Rückknopf in die zweite Ansicht drücke, erhalte ich diese Fehlermeldung.
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI leftCapWidth]: unrecognized selector sent to instance 0x6b57110'
*** Call stack at first throw:
(
0 CoreFoundation 0x02576919 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x026c45de objc_exception_throw + 47
2 CoreFoundation 0x0257842b -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3 CoreFoundation 0x024e8116 ___forwarding___ + 966
4 CoreFoundation 0x024e7cd2 _CF_forwarding_prep_0 + 50
5 UIKit 0x003935b9 -[UIImageView(UIImageViewInternal) _shouldDrawImage:] + 35
6 UIKit 0x00392f3a -[UIImageView(UIImageViewInternal) _canDrawContent] + 411
7 UIKit 0x00308f20 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 955
8 UIKit 0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
9 UIKit 0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
10 UIKit 0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
11 UIKit 0x0031119a -[UIScrollView _didMoveFromWindow:toWindow:] + 71
12 UIKit 0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
13 UIKit 0x00307b10 -[UIView(Hierarchy) _postMovedFromSuperview:] + 166
14 UIKit 0x00300a34 -[UIView(Internal) _addSubview:positioned:relativeTo:] + 1080
15 UIKit 0x002fed87 -[UIView(Hierarchy) addSubview:] + 57
16 UIKit 0x0050a829 -[UINavigationTransitionView transition:fromView:toView:] + 551
17 UIKit 0x0050a28d -[UINavigationTransitionView transition:toView:] + 56
18 UIKit 0x00381329 -[UINavigationController _startDeferredTransitionIfNeeded] + 266
19 UIKit 0x00380fc7 -[UINavigationController _popViewControllerWithTransition:allowPoppingLast:] + 386
20 UIKit 0x00381141 -[UINavigationController popViewControllerAnimated:] + 57
21 UIKit 0x003805b6 -[UINavigationController navigationBar:shouldPopItem:] + 148
22 UIKit 0x00327143 -[UINavigationBar _popNavigationItemWithTransition:] + 116
23 UIKit 0x0032def3 -[UINavigationBar _handleMouseUpAtPoint:] + 605
24 UIKit 0x002f42ff -[UIWindow _sendTouchesForEvent:] + 567
25 UIKit 0x002d61ec -[UIApplication sendEvent:] + 447
26 UIKit 0x002daac4 _UIApplicationHandleEvent + 7495
27 GraphicsServices 0x02ddcafa PurpleEventCallback + 1578
28 CoreFoundation 0x02557dc4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52
29 CoreFoundation 0x024b8737 __CFRunLoopDoSource1 + 215
30 CoreFoundation 0x024b59c3 __CFRunLoopRun + 979
31 CoreFoundation 0x024b5280 CFRunLoopRunSpecific + 208
32 CoreFoundation 0x024b51a1 CFRunLoopRunInMode + 97
33 GraphicsServices 0x02ddb2c8 GSEventRunModal + 217
34 GraphicsServices 0x02ddb38d GSEventRun + 115
35 UIKit 0x002deb58 UIApplicationMain + 1160
36 TravelGuideTemplate 0x00002730 main + 102
37 TravelGuideTemplate 0x000026c1 start + 53
)
terminate called after throwing an instance of 'NSException'
Ich weiß nicht, warum ich diese Nachricht bekomme. Könnte mir jemand helfen?
Danke fürs Lesen.
Lösung
Ich wette 1 $ Dies ist ein Problem mit der Speicherverwaltung. Ich denke, Ihre App versucht, auf ein zuvor veröffentlichtes Objekt zuzugreifen.
Aktivieren Sie NSZombie und prüfen Sie, ob dies die Fehlermeldung ändert:
- Doppelklicken Sie auf die ausführbare Datei in der Gruppe ausführbar
- Öffnen Sie die zweite Registerkarte,
arguments
- unter
Variables to be set in the environment
Fügen Sie eine Variable mit dem Namen hinzuNSZombieEnabled
, mit einem Wert vonYES
, und aktivieren Sie es, indem Sie das Kontrollkästchen davor ankreuzen. - Führen Sie Ihr Programm erneut aus
- ??
- profitieren
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow