2015-12-19 1 views
0

Xcode capture d'écran d'erreur:Nom de la classe inconnue PKPaymentAuthorizationViewControllerDelegate

enter image description here

environnement de travail: Xcode 7.2, iOS 9.0, Mac OS X 10.11.3

Je travaillais sur mon propre table View Controller pour interagir avec Apple Pay et j'ai copié l'exemple de code d'Apple.

Dans mon PaymentTableViewController.swift:

import UIKit 
import PassKit 
import Contacts 

class PaymentTableViewController: UITableViewController, PKPaymentAuthorizationViewControllerDelegate { 
    ... 
} 

Mais comme il a été auto-compilé dans Objective-C "Abletive (Mon nom du projet) -Swift.h":

SWIFT_CLASS("_TtC8Abletive26PaymentTableViewController") 
@interface PaymentTableViewController : UITableViewController <PKPaymentAuthorizationViewControllerDelegate> 

Maintenant et comme il devrait être correct

Mais il est dit Nom de classe inconnu PKPaymentAuthorizationViewControllerDelegate et Nom de type inconnu PKPaymentAuthorizationStatus à la place dans l'Abletive-Swift.h lorsque j'ai essayé de compiler et d'exécuter, apparemment cela se produit en raison de la compatibilité Objective-C droite? Parce qu'il n'y a aucune erreur dans le code Swift.

Mon projet est actuellement à moitié Objective-C et Swift.

+0

ne jamais afficher des captures d'écran de code, afficher le code comme texte. – luk2302

Répondre

2

Ajouter cette ligne à votre fichier BridgingHeader.h

#import <PassKit/PassKit.h> 

Si vous rencontrez plus d'erreurs dans trouver « YourProjectName-Swift.h » cadres dans lesquels sont des classes qui provoque une erreur et ajouter les importations en BridgingHeader.h comme

#import <FrameworkInWhichIsClass/FrameworkInWhichIsClass.h> 
+0

merci beaucoup! J'ai réellement ajouté #import pour le rendre correctement compilé – Cali

+0

Cela a fonctionné. Merci mon pote ;) –