All Projects → Ahmadalsofi → Sotabbar

Ahmadalsofi / Sotabbar

Licence: mit
Light way to add Fancy bottom bar 📲

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Sotabbar

Sheet
📑 Actionsheet with navigation features such as the Flipboard App
Stars: ✭ 264 (-34%)
Mutual labels:  custom
Kube Metrics Adapter
General purpose metrics adapter for Kubernetes HPA metrics
Stars: ✭ 309 (-22.75%)
Mutual labels:  custom
Foldingtabbar.ios
Folding Tab Bar and Tab Bar Controller
Stars: ✭ 3,677 (+819.25%)
Mutual labels:  tabbar
Flutter photo
Pick image/video from album by flutter. Support ios and android. UI by flutter, no native.
Stars: ✭ 285 (-28.75%)
Mutual labels:  custom
Laravel Attributes
Rinvex Attributable is a robust, intelligent, and integrated Entity-Attribute-Value model (EAV) implementation for Laravel Eloquent, with powerful underlying for managing entity attributes implicitly as relations with ease. It utilizes the power of Laravel Eloquent, with smooth and seamless integration.
Stars: ✭ 304 (-24%)
Mutual labels:  custom
React Querybuilder
A QueryBuilder component for React
Stars: ✭ 315 (-21.25%)
Mutual labels:  custom
Fancy
Fancy is a dynamic, object-oriented programming language inspired by Smalltalk, Ruby, Io and Erlang that runs on the Rubinius VM.
Stars: ✭ 257 (-35.75%)
Mutual labels:  fancy
Materialimageloading
Material image loading implementation
Stars: ✭ 396 (-1%)
Mutual labels:  custom
Demoinfo
A library to analyze CS:GO demos in C#
Stars: ✭ 306 (-23.5%)
Mutual labels:  fancy
Quickblox Ios Sdk
QuickBlox iOS SDK for messaging and video calling
Stars: ✭ 373 (-6.75%)
Mutual labels:  custom
Consola
Elegant Console Logger for Node.js and Browser 🐨
Stars: ✭ 3,461 (+765.25%)
Mutual labels:  fancy
Email Templates
📫 Create, preview, and send custom email templates for Node.js. Highly configurable and supports automatic inline CSS, stylesheets, embedded images and fonts, and much more!
Stars: ✭ 3,291 (+722.75%)
Mutual labels:  custom
Android Slidr
Another android slider / seekbar, but different :-)
Stars: ✭ 326 (-18.5%)
Mutual labels:  custom
Shapeofview
Give a custom shape to any android view, Material Design 2 ready
Stars: ✭ 2,977 (+644.25%)
Mutual labels:  custom
Lctabbarcontroller
A amazing and highly customized tabBarController! You could almost customize 100% properties with LCTabBarController!
Stars: ✭ 384 (-4%)
Mutual labels:  tabbar
Incrementproductview
Interesting concept of products incrementation
Stars: ✭ 262 (-34.5%)
Mutual labels:  custom
Custom Field Suite
Custom fields UI for WordPress
Stars: ✭ 312 (-22%)
Mutual labels:  custom
Medusa
Android fragment stack controller
Stars: ✭ 395 (-1.25%)
Mutual labels:  bottombar
Figlet Fonts
my collection of figlet / toilet ascii art fonts
Stars: ✭ 393 (-1.75%)
Mutual labels:  custom
Persei
Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift
Stars: ✭ 3,395 (+748.75%)
Mutual labels:  custom

SOTabBar

CocoaPods Platforms





📋 Requirements

SOTabBar requires iOS 9.3 or above, and is compatibile with Swift 4/5.

📲 Installation

CocoaPods

SOTabBar is available through CocoaPods:

pod 'SOTabBar'

Carthage

SOTabBar is also available through Carthage:

github "Ahmadalsofi/SOTabBar"

🚀 Usage

The Basics

  1. Set up your view controller with the an array of view controllers that you want to appear.
  2. Make your main View Controller subclass from SOTabBarViewController.
  3. return the array of your ViewControllers:
import UIKit
import SOTabBar
class MainViewController: SOTabBarViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        let firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "First_ID")
        let secondVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "Second_ID")
       
        firstVC.tabBarItem = UITabBarItem(title: "Home", image: UIImage(named: "firstImage"), selectedImage: UIImage(named: "firstSelectedImage"))
        secondVC.tabBarItem = UITabBarItem(title: "Chat", image: UIImage(named: "secondImage"), selectedImage: UIImage(named: "secondSelectedImage"))
	
        viewControllers = [firstVC, secondVC]
    }
}
  1. you can trigger your tab bar action by override the following function in your MainViewController
 override func soTabBar(_ tabBar: SOTabBarView, didSelectTabAt index: Int) {
      print("did Tapped On \(index)")
  }

🎨 Customization

You should set your customization before return the array of the viewcontrollers

class MainViewController: SOTabBarViewController {

    override func loadView() {
        super.loadView()
	    // SOTabBarSetting.propertyToCustomize = value
    }
}

tabBarHeight

    SOTabBarSetting.tabBarHeight = 100.0

tabBarTintColor

    SOTabBarSetting.tabBarTintColor = UIColor.red

tabBarBackground

    SOTabBarSetting.tabBarBackground = UIColor.purple

tabBarCircleSize

    SOTabBarSetting.tabBarCircleSize = CGSize(width: 50.0, height: 50.0)
  	 // or 
    SOTabBarSetting.tabBarCircleSize = CGSize(width: 80.0, height: 80.0)

tabBarSizeImage

    SOTabBarSetting.tabBarSizeImage = CGSize(width: 40.0, height: 40.0)

tabBarShadowColor

    SOTabBarSetting.tabBarShadowColor = UIColor.red.cgcolor

tabBarSizeSelectedImage

    SOTabBarSetting.tabBarSizeSelectedImage = CGSize(width: 40.0, height: 40.0)

tabBarAnimationDurationTime

    SOTabBarSetting.tabBarAnimationDurationTime = 2

👨🏻‍💻 Author

❤️ Contributing

Bug reports and pull requests are welcome on GitHub

👮🏻‍♂️ License

The library is available as open source under the terms of the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].