webentwicklung-frage-antwort-db.com.de

Warnung: Es konnte keine Objective-C-Klasseninformation mit dem Code von PaintCode geladen werden

Ich versuche, SVG-Karten mit durch Paintcode generierten Code zu zeichnen. Der Code funktioniert einwandfrei, wenn ich ihn mit einem Simulator ausführe. Aber wenn ich es in Gerät (iPad) starte, stürzt es in drawCanvas Methode ab 

Warnung: Objective-C-Klasseninformationen konnten nicht geladen werden. Dadurch wird die Qualität der verfügbaren Typinformationen erheblich verringert.

Warnbildschirm

Click here to check the warning Screen Shot

Ich zeichne eine Karte im Storyboard, in der in der Ansicht eine Bildlaufansicht und in dieser einen Bildansicht angezeigt wird. Ich habe ein StyleKitClass-Objekt hinzugefügt (StyleKitClass ist eine mit PaintCode-App generierte NSObject-Klasse), mit der ich über IBOutlet Collections zu imageView verbunden bin. 

Ausgangsanschlüsse

Click here to view Outlet Connections

Wenn jemand weiß, dann helfen Sie mir bitte mit der Lösung.

6
PriyaJain

Ich arbeite bei PixelCut, wir machen PaintCode.

Nachdem Sie uns das Projekt geschickt haben, konnte ich dieses Problem auf dem iPhone 5s bestätigen. Leider setzen Sie PaintCode, Xcode und iOS an ihre funktionalen Grenzen, indem Sie versuchen, die Zeichnungsmethode mit 53.000 Codezeilen zu verwenden. Diese einzelne Methode benötigt 9 MB in der Binärdatei (nur Arm64, -Onone) und verwendet fast 1000 Variablen des Zeigertyps. Mein bester Eindruck ist, dass die App einige Grenzen der Stackspeichergröße erreicht und vom System beendet wird.

Wir haben bereits StyleKits mit mehr als 10 Tausend Zeilen gesehen, aber keines davon hatte eine einzige Methode diese große. Ich würde empfehlen, Ihre Zeichnung in mehrere Leinwände zu teilen und sie mit Symbolen zu komponieren, aber ich befürchte, dass die Arbeit mit einer so großen Zeichnung schmerzhaft sein kann.

6
Tricertops

Dies ist mir kürzlich passiert, wurde durch einen falsch geschriebenen Dateinamen im Code von ViewController.Swift verursacht.

0
eplazai

Versuchen Sie, @objc vor den verwendeten Funktionen zu platzieren: 

@objc func myFunction() {

Weitere Informationen zur Interoperabilität von Objective C finden Sie hier: https://developer.Apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/InteractingWithObjective-CAPIs.html

0
ScottyBlades