本気ではじめるiPhoneアプリ作り Xcode 9.x Swift 4.x対応 (「ヤフー黒帯」シリーズ) 新品価格 |
Swift4で
objetive-cからSwiftのクラスを呼ぶ仕様が変わった
XcodeでSwift4を許可にすると以下のwarningを吐く
Swift property 'hogehgoe' uses '@objc' inference deprecated in Swift 4; add '@objc' to provide an Objective-C entrypoint
以下、修正内容
・Xcodeの設定
Swift 3 @objc inferenceがYesならwaraningを吐く
これを解消するためには、Defaultにする必要がある
http://evgenii.com/blog/disabling-swift3-objc-inference-in-xcode9/
・変更内容
今まではNSObjectを継承していればよかったが
Swift4からは明示的に@objcを書く必要がある模様
面倒なら
@objcMembers
をクラスに書いとけば大丈夫
これでwarningが消えましたとさ
毎回Xcode上がるたびに辛い目に合いますねぇ
続くよ
タグ:Swift Objective-C