π‘ Tab Bar
Tab bar λ μ± νλ©΄μ νλ¨μ μμΉνλ©°, μ¬λλ€μ΄ λ€λ₯Έ μΉμ λ€κ° μ νμ λΉ λ₯΄κ² νλλ‘ νλ€. μΌλ°μ μΌλ‘ λ€λ₯Έ μ’ λ₯μ μ 보λ€μ 보μ¬μ€ λ, νΉμ κ°μ μ 보λ₯Ό μμ ν λ€λ₯Έ μ€νμΌλ‘ 보μ¬μ€ λ μ¬μ©νλ€.
βοΈ Tab Bar μ Toolbar μ μ°¨μ΄μ
Tab bar μ λΉμ·νκ² νλ¨μ μμΉν toolbar μ μ°¨μ΄μ μ μ΄ν΄νλ κ²μ΄ μ€μνλ€.
Tab bar λ μ±μ μ¬λ¬ μΉμ μ€ μ νμ νλλ‘ νλ κ²μ΄ λͺ©μ μ΄λ€. μλ₯Ό λ€λ©΄, μκ³ μ±μ μλ, μ€νμμΉ, νμ΄λ¨Έ νλ€μ΄ μλ€.
Toolbar λ νμ¬ λ³΄μ¬μ§λ λ΄μ©κ³Ό μ°κ΄μλ μ‘μ μ μννλ λ²νΌλ€μ ν¬ν¨νλ€. μλ₯Ό λ€λ©΄, μμ΄ν μ μμ±νκ±°λ μμ νκΈ°, λΆλ§ν¬μ μΆκ°νκΈ°, 곡μ νκΈ° λ±μ΄ μλ€.
Tab bar μ Toolbar λ λ€ νλ¨μ λνλλ―λ‘ κ°μ λ·°μμ ν¨κ» λνλ μ μλ€.
βοΈ UITabBarController
class UITabBarController : UIViewController
π‘ A container view controller that manages a multiselection interface, where the selection determines which child view controller to display.
UITabBarController λ μ¬λ¬ μΉμ μ κ°μ§λ μ±μμ κ° μΉμ μ μ νν΄ ν΄λΉ λ·°λ‘ μ΄λν μ μλλ‘ νλ€. μ μ κ° νΉμ ν νμ λλ₯΄λ©΄, Tab bar controller λ μ΄μ view λ₯Ό κ΅μ²΄ν΄ νκ³Ό μ°κ²°λ view controller μ root view λ₯Ό 보μ¬μ€λ€.
UITabBarController λ UIViewController λ₯Ό μμλ°μ ν΄λμ€μ΄λ―λ‘, view μμ±μ κ°λλ€. ν΄λΉ view λ tab bar view μ custom content λ₯Ό ν¬ν¨νλ 컨ν μ΄λμΌ λΏμ΄λ€.
μλ κ·Έλ¦Όμ 보면, Tab bar view λ μ μ κ° μ νν μ μλ Tab bar λ₯Ό μ 곡νλ©°, μ¬λ¬κ°μ tab bar items μΌλ‘ ꡬμ±λλ€. Tab bar view μμ μ νλ item μ ν΄λΉνλ content view νλλ§ νλ©΄μ 보μ¬μ§κ² λλ€.
βοΈ UITabBar
class UITabBar : UIView
π‘ A control that displays one or more buttons in a tab bar for selecting between different subtasks, views, or modes in an app.
UITabBar λ μ¬λ¬ μΉμ μ κ°μ§λ μ±μμ μ νμ ν μ μλλ‘ λ²νΌμ 보μ¬μ£Όλ μν μ νλ€. μ¬μ©μμ μΈν°νμ΄μ€μ λ§κ² Tab bar μ λ°°κ²½ μ΄λ―Έμ§, μμ λ±μ μΈνμ 컀μ€ν°λ§μ΄μ§ ν μ μλ€.
UITabBar λ νλ μ΄μμ UITabBarItem object λ€μ 보μ¬μ€λ€. κ° μμ΄ν μ λ΄μ©μ UITabBarItem object μ μ μ₯λμ΄ μμΌλ©°, κ° μμ΄ν μ title, image λ₯Ό κ°μ§κ³ μλ€.
Tab bar λ μΌλ°μ μΌλ‘ UITabBarController μ ν¨κ» μ¬μ©λμ§λ§, λ 립μ μΌλ‘ μ¬μ©ν μλ μλ€. UITabBarController object κ° μλ κ²½μ° μλ λ³Έ μ€ν 리보λ μμ μ κ°λ€. λ 립μ μΌλ‘ μ¬μ©ν κ²½μ° κ°λ³ View μ λΌμ΄λΈλ¬λ¦¬μ tab bar λ₯Ό μΆκ°νμ¬ μμ±ν μ μλ€.
π©π» Storyboard μμ Tab Bar Controller μΆκ°νκΈ°
Storyboard μμ Tab Bar Controller λ₯Ό μΆκ°ν λͺ¨μ΅μ 보면 μ΄ν΄κ° μ½λ€. [Editor > Embed In > Tab Bar Controller] λ₯Ό λλ¬ μ€ν 리보λμ μΆκ°ν μ μλ€. Tab Bar Controller View λ Tab Bar λ₯Ό κ°μ§λ©°, μ°κ²°λ View Controller μ κ°μλ§νΌ item μ΄ λνλλ€.
Tab Bar Controller μ View Controller λ€μ Relationship Segue λ‘ μ°κ²°λμ΄ μλ μνμ΄λ€. Relationship segue λ₯Ό μμ±νλ©΄ μλμ μΌλ‘ tab bar μ μλ‘μ΄ item μ΄ μΆκ°λλ©°, Relationship segue λ₯Ό μμ νλ©΄ tab bar μμ ν΄λΉ item μ΄ μμ λλ€.
κ° item μ μ΄λ―Έμ§, νμ΄νμ λ³κ²½νκΈ° μν΄μλ ν΄λΉ View Controller νμμ Tab bar item μμ λ³κ²½νλ©΄ λλ€.
π§π» Tab bar μ default view λ°κΎΈκΈ°
μ°Έκ³ λ‘, μ±μ μ€ννμ λ μ²μ 보μ¬μ§λ view λ Tab bar μμ 맨 μΌμͺ½μ μλ view μ΄λ€. μ€ν 리보λμμ λλκ·Ένμ¬ μμ΄ν κ° μμΉλ₯Ό λ³κ²½ν μ μλ€. μ§ννλ νλ‘μ νΈμμλ Tab bar μ κ°μ΄λ° μμ΄ν μ΄ main view κ° λλλ‘ κ΅¬μ μ€μ΄λΌ μμ μ΄ νμνλ€.
μ΄κΈ° μ νλ νμ λ°κΎΈκΈ° μν΄ μλ λ°©λ²μΌλ‘ ν΄κ²°νλ€.
- Tab Bar Controller μ Custom Class λ₯Ό μμ±ν¨.
- Custom Class μμ viewDidLoad method μμ self.selectedIndex = 1 μ½λ μΆκ°.
* selectedIndex λ UITabBarController μμ νμ¬ μ νλ νμ κ΄λ¦¬νκΈ° μν instance property μ΄λ€..
μ°Έκ³ λ§ν¬ [곡μλ¬Έμ]
- Human Interface Guidelines - Tab bars
- Apple Developer Documentation - UITabBar
- Apple Developer Documentation - UITabBarController
μ°Έκ³ λ§ν¬