質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

1回答

1315閲覧

フレームワーク(ライブラリ)をUIViewControllerプロトコルとして使いたいがエラーがでる。

退会済みユーザー

退会済みユーザー

総合スコア0

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2019/04/15 04:07

編集2019/04/15 04:09

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ドロップしても使えるのかを確認したいので、
他の解決策を探しています。

プロトコルとしてライブラリを扱うために、他に不備があるようでしたら教えていただけると助かります。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2019/04/15 06:15

質問内に「プロトコル」が出てこないのですが、この質問とプロトコルにどういう関係があるんでしょうか?
guest

回答1

0

パックマン

パックマン』 (Pac-Man) は、ナムコ(後のバンダイナムコエンターテインメント)より1980年5月22日に発表されたアーケードゲーム、またはそのシリーズのタイトルで同社の看板タイトルである。世界で知られた日本産のコンピュータゲームの一つで、当時ナムコとの関係が一時的に密接となったバリー=ミッドウェイ(後のミッドウェイゲームズ)よりアメリカで発売されると、その知名度から**80年代のミッキーマウス**と称された[1]。

投稿2019/04/15 06:10

編集2019/04/18 01:14
fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問