Cocoa Touch Frameworkで、以下のようなライブラリを作りました。
プロトコルとして扱うことで、
クラスのview.backgroundColorを.purpleにするだけのライブラリです。
//ライブラリ import UIKit open class TestLibraryViewController: UIViewController { open override func viewDidLoad() { super.viewDidLoad() view.backgroundColor = .purple } }
ライブラリを使うために設定した方法
・ライブラリの
XcodeのナビゲーターエリアにあるProductsディレクトリ内の.frameworkファイルを、
Single View Appで別に作ってあるプロジェクトに直接ドラッグandドロップして入れました。
・プロジェクトの
Target > General > 内のEmbedded Binariesと、Linked Frameworks and Librariesに.frameworkファイルを追加しました。
・プロジェクトに
デフォルトで作成されているViewController.swiftにライブラリのモジュールをimportし、
UIViewControllerプロトコルを消して、
ライブラリのTestLibraryViewControllerをプロトコルとして追加しました。
発生してるエラー
・あとはプロジェクト のoverride viewdidloadにview.backgroundColorを設定しなくても、
ライブラリに定義したカラー.purpleを表示させる事ができればよいのですが、ビルドできずエラーが出ています。
ld: framework not found hogehogeLibrary clang: error: linker command failed with exit code 1 (use -v to see invocation)
エラーについて調べたこと 分からないこと
cocoa podsをupdateすると解消する可能性のあるエラーのようですが、
今はcocoapodsを使わず、試しにライブラリを直接ドラッグandドロップしても使えるのかを確認したいので、
他の解決策を探しています。
プロトコルとしてライブラリを扱うために、他に不備があるようでしたら教えていただけると助かります。
よろしくお願いいたします。