- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
797 :デフォルトの名無しさん[sage]:2017/08/12(土) 15:21:17.11 ID:3WtgEz9W - その方法でまんま何も問題ないけど?
Swift側で、入力補完でプロパティ出てくるし、参照に問題なく代入で cannot assign to property: 'count' is a get-only property ってエラー出るし generated headerってなんじゃらほいだが。SwiftでFoobar.countの定義参照(Command+Click)してもFoobar.hのそれまんまがだし Swift -> Objective-C が Generated Header(SwiftソースからObjective-Cのヘッダーをじぇねれーと)じゃないのかな??Objective-C -> Swift はBridge Header (なにかしているんだろうが、単なる参照用)
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
798 :デフォルトの名無しさん[sage]:2017/08/12(土) 15:26:34.38 ID:3WtgEz9W - >>797は>>794宛て
>>795 すでにレスってたのね、失礼。ほぼ、同じどす
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
800 :デフォルトの名無しさん[sage]:2017/08/12(土) 15:52:20.34 ID:3WtgEz9W - >>799
絵が見えないー。何をやってるのか見えなーい んー… Swiftで作ったクラスをObjective-CでがGenerateだと思うんだがな。HeaderとInterfaceの違いではなく…まあ、どうでもいいけど、Objective-Cで作ったクラスをSwiftででいいのね? 何やってるのか見えないのでなんともだが、とりあえず Product メニューの Clean(よりも、Option押しながらのClean Build Folder…)かな
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
802 :デフォルトの名無しさん[sage]:2017/08/12(土) 16:09:41.21 ID:3WtgEz9W - >>801
ん??右端の Hello.h が generated header/Generated interface とやら?んなのいらんだろ?? 単に、Bridge Header に、その左隣の Objective-C 用の Hello.c をインポートすればいいだけだろ??>>795さんのでいえば30から31行目、Hello-Bridging-Header.hというファイルに#import "Hello.h"を一行 Bridge Headerを使うようには設定でだが、Objective-Cのプロジェクトで最初にSwiftファイル作れば、「Bridge Headerつくるよ」とXcodeが勝手にやってくれるし、その後設定を確認してみればBridge Headerを使う設定がわかるだろう
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
803 :デフォルトの名無しさん[sage]:2017/08/12(土) 16:13:00.14 ID:3WtgEz9W - >>802
>勝手にやってくれる Bridge Headerファイルの作成と、プロジェクトへのBridge Headerファイル登録と、ビルド設定ね Swiftで使うクラスは、Bridge Headerに自分で記述する(単に#import "….h")
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
804 :デフォルトの名無しさん[sage]:2017/08/12(土) 16:22:45.31 ID:3WtgEz9W - >>802
すまん。ちょこちょこ間違えた >その左隣の Objective-C 用の Hello.c その左隣の Objective-C 用の Hello.h >でいえば30から31行目 でいえば30から32行目
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
805 :デフォルトの名無しさん[sage]:2017/08/12(土) 20:56:39.29 ID:3WtgEz9W - >>801
そういえば、(標準の)Frameworkは?ってのは、umbrella headerってのをFrameworkに仕込むらしい それも、ヘッダーはそんなSwiftみたいなのではなく、単にObjective-Cのヘッダー(をSwift用にプリコンパイル(?)してモジュール化しての) すると、Swiftで import Foobar ってだけで
|
- Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
806 :デフォルトの名無しさん[sage]:2017/08/12(土) 21:33:48.50 ID:3WtgEz9W - >>805
ああ、umbrella headerって、Objective-Cでも/でのModulesのためのか。@importの。@importなんて忘れてたw それの使用/流用か?@importはSwiftより1年先みたいだし
|