ermalkaleci / CarbonKit

CarbonKit - iOS Components (Obj-C & Swift)
MIT License
682 stars 163 forks source link

When hit back the icons will stay at the page for a while before disappearing #224

Open hansheung opened 5 years ago

hansheung commented 5 years ago

screencast 2018-12-13 17-16-30

 import UIKit
 import CarbonKit

class Result: UIViewController, CarbonTabSwipeNavigationDelegate {

var sURL : String = ""

 override func viewDidLoad() {

    super.viewDidLoad()

    print( " From Home VC : ", sURL)

//===== substring the URL to get the screen Name=============
    let startIndex = sURL.range(of: "result_")?.upperBound
    let startString = sURL.substring(from: startIndex!) //===startString:                   let endIndex = startString.range(of: ".")!.lowerBound //===endIndex: 

    var sScreen = startString.substring(to: endIndex)
//=================================================================

    let iconNames = ["0mag", "1dmc", "2toto","3sg", "4lotto", "5cs", "6stc","7m101"]
    var images = [UIImage]()

    for icon in iconNames {
        if let img = UIImage(named: icon)?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal) {
        images.append(img)
        }
    }

    let carbonTabSwipeNavigation = CarbonTabSwipeNavigation(items: images, delegate: self)
    //carbonTabSwipeNavigation.pagesScrollView?.isScrollEnabled = false
    carbonTabSwipeNavigation.insert(intoRootViewController: self)

    carbonTabSwipeNavigation.setTabExtraWidth(20)
    carbonTabSwipeNavigation.setTabBarHeight(100)
    carbonTabSwipeNavigation.toolbar.barTintColor = UIColor.black
    carbonTabSwipeNavigation.toolbar.isTranslucent=true

    var iIndex = UInt()

    if(sScreen=="mag"){
        iIndex = 0
    }else if(sScreen=="dmc"){
        iIndex = 1
    }else if(sScreen=="toto"){
        iIndex = 2
    }else if(sScreen=="sg"){
        iIndex = 3
    }else if(sScreen=="lotto"){
        iIndex = 4
    }else if(sScreen=="stc"){
        iIndex = 5
    }else if(sScreen=="cs"){
        iIndex = 6
    }else if(sScreen=="m101"){
        iIndex = 7
    }

    print("The iIndex: ", iIndex)

    carbonTabSwipeNavigation.setCurrentTabIndex(iIndex, withAnimation: true)

}

override func viewDidAppear(_ animated: Bool) {

    super.viewDidAppear(animated)
}

func carbonTabSwipeNavigation(_ carbonTabSwipeNavigation: CarbonTabSwipeNavigation, viewControllerAt index: UInt) -> UIViewController {

    var screen = UIViewController()
    print("What is the index: " , index)

    if (index == 0){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "magnum4D" ) as! Magnum4D

    }else if (index == 1){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "dmc" ) as! DMC

    }else if (index == 2){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "toto" ) as! Toto

    }else if (index == 3){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "sg" ) as! SG

    }else if (index == 4){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "lotto" ) as! Lotto
    }else if (index == 5){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "stc" ) as! STC

    }else if (index == 6){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "cs" ) as! CS

    }else if (index == 7){

        screen = self.storyboard?.instantiateViewController( withIdentifier: "m101" ) as! M101
    }

    print(" What screen is called ", screen)
    return screen

  }
}
bcsezer commented 4 years ago

hello asked a long time ago but did you find a solution?