IOS-Swift,CarbonKit回击时,Icons还在pager停留了一会儿,如何让它们立即消失
IOS-Swift, CarbonKit when hit back, the Icons still stayed at pager for a while, how to make them disappear immediately
我已经成功地实现了 Carbon Kit 可滚动的 TabBar,并以图像作为图标。我遇到的问题是当我回击时。图标将在页面上保留一段时间,然后消失。有没有办法让它们立即消失。如果我点击底部的标签栏。这件事不会发生。请帮助
视频
代码
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
}
}
这些是当前在视图边界之外的菜单项。因此‘view.clipToBounds = true’应该有效。
您也可以尝试 setting/animating 在调用“viewWillDissapear”时将菜单项的 alpha 设置为 0。
之后:
carbonTabSwipeNavigation.insert(intoRootViewController: self)
在下面插入
carbonTabSwipeNavigation.carbonTabSwipeScrollView.clipsToBounds = true
我已经成功地实现了 Carbon Kit 可滚动的 TabBar,并以图像作为图标。我遇到的问题是当我回击时。图标将在页面上保留一段时间,然后消失。有没有办法让它们立即消失。如果我点击底部的标签栏。这件事不会发生。请帮助
视频
代码
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
}
}
这些是当前在视图边界之外的菜单项。因此‘view.clipToBounds = true’应该有效。
您也可以尝试 setting/animating 在调用“viewWillDissapear”时将菜单项的 alpha 设置为 0。
之后:
carbonTabSwipeNavigation.insert(intoRootViewController: self)
在下面插入
carbonTabSwipeNavigation.carbonTabSwipeScrollView.clipsToBounds = true