NativeScript / NativeScript/ios
[BUG] Problem with class names and NIBs
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 150
- Forks
- 43
- Merge moyen
- 3 j 10 h
- PR mergées (30 j)
- 22
Description
I'm using a POD that has Swift code and XIBs for controllers. This is the pod that I'm using:
pod 'iOSPhotoEditor', :git => 'https://github.com/PeterStaev/photo-editor.git', :commit => '5f90ae8f937e1bf4ef3c46d0fda5fef715c7a5de'
When running with JSC (iOS runtime 6.5.2) When I do:
console.log(PhotoEditorViewController);
I get
function iOSPhotoEditor.PhotoEditorViewController() {
[native code]
}
Which is correct and name so when I try to load the controller with the NIB it works. Here is the code that creates the view controller with the NIB:
const bundle = NSBundle.bundleForClass(PhotoEditorViewController.class());
const viewController = PhotoEditorViewController.alloc().initWithNibNameBundle("PhotoEditorViewController", bundle);
With the v8 runtime seems all the classes are renamed. When I try the same log with the new runtime i get:
function _TtC14iOSPhotoEditor25PhotoEditorViewController() { [native code] }
Since the class is renamed the creation of the viewcontroller fails, as the XIB isn't named accordingly. The exact error is:
CONSOLE ERROR: Error: Could not load NIB in bundle: 'NSBundle </Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework> (loaded)' with name 'PhotoEditorViewController'
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Reproduire le snippet JavaScript avec le pod iOSPhotoEditor épinglé sous JSC et V8, en commençant par PhotoEditorViewController.class() et initWithNibNameBundle. Comparer la façon dont chaque runtime résout le nom de classe et le bundle ; la tâche est terminée lorsque PhotoEditorViewController charge son NIB existant sous V8 sans nécessiter de NIB renommé.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- ios, javascript, swift
- Domaine
- mobile-dev
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100