swift - 實現類似今日頭條頂部標簽和底部內容的動態解決方案


TYPageView

TYPageView 類似今日頭條 的標簽導航解決方案,支持多種樣式選擇,基於swift3.0,支持文字顏色動態變化,底部選中線的動態變化

配圖:

使用方法:

        let titles = ["推薦","熱點","健身","海賊王","大鬧天宮","推薦","熱點","健身","海賊王","大鬧天宮"]
        var childsVc:[UIViewController] = [UIViewController]()
        for _ in 0..<titles.count {
            let contentVc = TYContentController()  //控制器管理
            childsVc.append(contentVc)
        }
        let pageView = TYPageView(frame: view.bounds, titles: titles, childControllers: childsVc, parentController: self)
        view.addSubview(pageView)

設置屬性TYPageStyle(不傳入樣式,使用默認屬性)

    var labelHeight:CGFloat = 44            //標簽高度
    var labelMargin:CGFloat = 20            //標簽間隔
    var labelFont:CGFloat = 15              //標簽字體大小
    var labelLayout:LabelLayout = .scroll   //默認可以滾動
    var selectColor:UIColor = UIColor(r: 255, g: 0, b: 0)  //字體顏色必須為rgb格式
    var normalColor:UIColor = UIColor(r: 0, g: 0, b: 0)    //字體顏色必須為rgb格式
    var isShowLabelScale:Bool = true        //是否顯示文字動畫

    var isShowBottomLine:Bool = true        //是否顯示底部的線
    var bottomLineColor:UIColor = .red
    var bottomAlginLabel:Bool = true        //bottomline跟隨文字標簽寬度  默認跟隨label的寬度 false跟隨labelText的寬度

設置label布局樣式

enum LabelLayout {
    case scroll   //可以滾動
    case divide   //不可以滾動,所有label均分
    case center   //居中,不可以滾動
}

demo下載地址:https://github.com/qqcc1388/TYPageView


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM