[swift] 스위프트 유레카 라이브러리에서 제공하는 사이드 메뉴(Side Menu) 컴포넌트의 사용법은 어떻게 되나요?

스위프트 유레카(Eureka)는 iOS 앱 개발을 쉽게 해주는 라이브러리 중 하나입니다. 이 라이브러리는 다양한 UI 컴포넌트를 제공하며, 그 중 하나인 사이드 메뉴(Side Menu) 컴포넌트는 앱 내에서 네비게이션 메뉴를 구현할 때 유용하게 사용할 수 있습니다.

아래는 스위프트 유레카 라이브러리에서 사이드 메뉴 컴포넌트를 사용하는 방법입니다.

  1. 스위프트 유레카 라이브러리를 프로젝트에 추가합니다. Podfile에 다음과 같이 추가합니다.
pod 'Eureka'
  1. 터미널에서 pod install 명령어를 실행하여 라이브러리를 설치합니다.

  2. 사이드 메뉴를 사용할 뷰 컨트롤러를 생성합니다. 해당 뷰 컨트롤러는 SideMenuNavigationController 타입이어야 합니다.

import SideMenu

class SideMenuViewController: SideMenuNavigationController {
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 사이드 메뉴 컨트롤러 설정
        // ...
    }
}
  1. SideMenuNavigationController의 설정을 구성합니다. 예를 들어, 사이드 메뉴로 보여줄 뷰 컨트롤러, 사이드 메뉴의 너비, 애니메이션 설정 등을 설정할 수 있습니다.
class SideMenuViewController: SideMenuNavigationController {
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 사이드 메뉴 컨트롤러 설정
        let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let mainViewController = mainStoryboard.instantiateViewController(withIdentifier: "MainViewController")
        
        // 메뉴로 보여줄 뷰 컨트롤러 설정
        let menuViewController = mainStoryboard.instantiateViewController(withIdentifier: "MenuViewController")
        self.leftSide = true // 왼쪽에서 나오는 사이드 메뉴 설정
        self.menuWidth = UIScreen.main.bounds.width * 0.8 // 사이드 메뉴의 너비 설정
        self.animationOptions = [.curveEaseInOut] // 애니메이션 설정
        
        self.setContentViewController(mainViewController) // 메인 뷰 컨트롤러 설정
        self.setMenuViewController(menuViewController) // 사이드 메뉴 뷰 컨트롤러 설정
    }
}
  1. 앱 내에서 사이드 메뉴를 사용할 뷰 컨트롤러에서 사이드 메뉴를 보여주는 버튼을 추가하고, 해당 버튼의 액션을 구현합니다.
import SideMenu

class MainViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 사이드 메뉴 버튼 추가
        let sideMenuButton = UIBarButtonItem(title: "Menu", style: .plain, target: self, action: #selector(showSideMenu))
        navigationItem.leftBarButtonItem = sideMenuButton
    }
    
    @objc func showSideMenu() {
        guard let sideMenuViewController = SideMenuManager.default.leftMenuNavigationController else { return }
        present(sideMenuViewController, animated: true, completion: nil)
    }
}

위와 같이 구현하면 뷰 컨트롤러에서 showSideMenu() 액션을 호출하면 사이드 메뉴가 보여지게 됩니다.

스위프트 유레카 라이브러리를 사용하여 사이드 메뉴 컴포넌트를 손쉽게 구현할 수 있습니다. 자세한 내용은 스위프트 유레카 라이브러리의 공식 문서를 참고하시면 됩니다.

참고 문서: https://github.com/xmartlabs/Eureka