LoginSignup
11
10

More than 5 years have passed since last update.

swiftからJASidePanelsでMenu作成

Last updated at Posted at 2015-04-10

JASidePanelsで表示したtableViewをMenuにするとして、選択したCellからの遷移の実装を知る。
仕事でios開発できないのでせっかく作ったけど忘れやすいのでメモ

前提

  • cocoapodsはinstall済
  • xcode6.2
  • swift使う
  • swiftでcocoaPodsのライブラリJASidePanels使ってみる

手順

JASidePanelsインストール

  • 新規プロジェクト作成:JASidePanels_Menu_Sample
  • Podfile新規作成
.
├── JASidePanels_Menu_Sample
├── JASidePanels_Menu_Sample.xcodeproj
├── JASidePanels_Menu_SampleTests
└── Podfile
pod 'JASidePanels'
$ pod install

install.png

インストール後に開くプロジェクトは.xcworkspaceになる

Bridging-Headerを作る

これしないとswiftでcocoaPodsのライブラリが使えない

  • JASidePanels_Menu_Sample.xcworkspaceでプロジェクトを起動

以下ページを参考にBridging-Headerを作る
http://qiita.com/tamanyan/items/201bdd8063452d620a66

JASidePanels_Menu_Sample-Briding-Header.h
#import "JASidePanelController.h"
#import "UIViewController+JASidePanel.h"

sidePanelの実装

メニューから遷移するのは3画面。
表示するcenterViewController1〜3はStoryboad上でNavigetionControllerを3つ作ってそれぞれのStoryboad IDをcenterViewController1〜3にしたもの。
色分けしてわかりやすくしている。

JASidePanelControllerを親クラスにMySidePanelControllerViewControllerを作成

override func awakeFromNib() {
    self.leftPanel = self.storyboard?.instantiateViewControllerWithIdentifier("MenuViewController") as UIViewController
    self.centerPanel = self.storyboard?.instantiateViewControllerWithIdentifier("centerViewController1") as UIViewController
    }

menu部分

UITableViewControllerで作った。
Cellを押下して表示するコントローラー部分は以下のような感じで出し分ける。


override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    switch indexPath.row {
    case 0:
        self.sidePanelController.centerPanel = self.storyboard?.instantiateViewControllerWithIdentifier("centerViewController1") as UIViewController
        break
    case 1:
        self.sidePanelController.centerPanel = self.storyboard?.instantiateViewControllerWithIdentifier("centerViewController2") as UIViewController
        break
    case 2:
        self.sidePanelController.centerPanel = self.storyboard?.instantiateViewControllerWithIdentifier("centerViewController3") as UIViewController
        break
    default:
        break
}

おしまい

これを使ってはやくそれっぽいアプリを作れるようになりたいものです。

11
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
10