Swift 實(shí)現(xiàn)導(dǎo)航欄文字的無限滾動(dòng)

1.項(xiàng)目中引入第三方框架MarqueeLabel,地址如下:

https://github.com/search?utf8=?&q=MarqueeLabel&type=Repositories&ref=searchresults

2.那上代碼吧:

import UIKit

import MarqueeLabel_Swift

class MarqueeTitleView: UIView {

init(frame: CGRect, title: String) {

super.init(frame: frame)

let label = MarqueeLabel(frame: frame)

label.text = title

label.textColor = .whiteColor()

label.font = UIFont.boldSystemFontOfSize(17)

label.textAlignment = .Center

label.scrollDuration = 10

label.trailingBuffer = 30

label.fadeLength = 10

label.animationCurve = .EaseInOut

self.addSubview(label)

}

required init?(coder aDecoder: NSCoder) {

fatalError("init(coder:) has not been implemented")

}

}

注:導(dǎo)入框架后自定義一個(gè)view將上面代碼粘貼替換.

3.控制器中代碼:

class BaseViewController: UIViewController {

override func viewDidLoad() {

super.viewDidLoad()

self.navigationItem.leftBarButtonItem = UIBarButtonItem(imageName: "nav_back", target: self, action: #selector(back))

let width = view.frame.width - 120

let titleView = MarqueeTitleView(frame: CGRect(x: 0, y: 0, width: width, height: 30), title: "這個(gè)地方是你要導(dǎo)航欄上title滾動(dòng)的文字")

navigationItem.titleView = titleView

}

}

4.好了,趕快去試試吧,驚喜等你發(fā)現(xiàn).

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容