2016-01-06 7 views
0

I mis à jour Xcode à la dernière version (7.2) et j'obtenu l'erreur suivante:erreur NSBezierPath avec Swift 2

Utilisation du noir 'NSBezierPath'

extension String { 
    ... 
} 

extension NSBezierPath { //Error here 
    ... 
} 

Comment puis-je résoudre ce problème?

+0

Avez-vous réellement voulu créer une extension pour 'UIBezierPath'? – luk2302

+0

@ luk2302 Oui mais c'est une extension pour ** NS ** BezierPath. – Geek20

+2

@ Geek20: Est-ce un projet OS X? Est-ce que vous «importez AppKit»? (Mais cela serait également nécessaire pour les anciennes versions de Xcode.) –

Répondre

0

NSBezierPath est toujours valide donc je suppose que vous ne l'avez pas:

import Cocoa 

ou

import AppKit 

Non h qui comptent sur l'App OS X étant orienté .. De cette façon, vous obtenez NSBezierPath Si vous parlez d'une application IOS (TVOS, WatchKit ou d'autres appareils iOS):

import UIKit 

vous obtenez UIBezierPath

Il y a quelques différences mineures entre les deux, mais ils fonctionnent à peu près la même ..

Juste pour modifier:

Objective-C et Swift diffèrent quelques façons .. (bien pas vraiment) ...

Swift vous importer des modules (comme vous pouvez le faire en Obj-C aussi - grâce aux différences LLVM/Clang donc):

classic objective C:

#import <Cocoa/Cocoa.h> 

newer objective C: @import cacao

de même pour Swift, mais vous ne les importer pas '@import'

-à-dire

import Cocoa 
import CoreFoundation