SwiftからObjective-Cのライブラリを呼び出す
Objective-CがiOSアプリ開発のための言語として公開されて以来、世界中の有志によって便利なライブラリが作成されGitHub等で公開されています。Objective-Cは学習コストが高いため、このようなライブラリはアプリを開発する上で非常に役立ちます。
よく利用されるObjective-Cのライブラリ
Objective-Cでよく利用されるライブラリには次のものがあります。
名前 | 概要 |
---|---|
MRProgress | 進捗状態を表示 |
MBPhotoBrowser | 写真閲覧機能 |
ViewDeck | FaceBook風のメニューを表示 |
FPPopover | iPhoneでポップオーバーを表示 |
Google Maps SDK for iOS | Google Mapの利用 |
Google APIs Client Library for Objective-C | Google APIの利用 |
SalesforceMobileSDK-iOS | Salesforceの機能の利用 |
UIだけでなく、API利用時の認証等、スクラッチで作成すると非常に手間になるものがライブラリとしてまとまっています。ライブラリと利用することで、開発者自身がこれらの複雑な機能を自分で作成する必要がなく、効率的に開発を進めることができます。サンプルでは、iPhoneでは既定で提供されていないUIであるポップオーバーを実現するライブラリ「FPPopover」を利用します。FPPopoverのUIは次の通りです。
SwiftからObjective-CのライブラリであるFPPopoverを利用して、上記のUIを実装する手順を説明します。
作成するサンプル
FPPopoverを使って作成するサンプルの概要図は次のようになります。ポップオーバーから何か選択した後に処理が走るアプリの雛形のサンプルです。
Swiftで作成したアプリの画面からボタンを押すと、FPPopoverのポップオーバーが出現します。アプリのベースとなる画面、ボタン、ポップオーバーの中のメニュー等はすべてSwiftで作成します。ポップオーバーのメニューのアイテムを選択すると、選択したアイテムを画面に表示します。この時にSwiftで作成したデリゲートを経由するようにします。アプリのプロジェクト自体はSwiftで作成し、そこからObjective-Cのライブラリを利用して一連のSwiftの処理を行う、というサンプルを今回と次回に分けて順を追って説明します。