zoukankan      html  css  js  c++  java
  • swift隐藏显示导航栏的底线

    //

    //  UIBarExtension.swift

    //  sinaDemo

    //

    //  Created by admin on 17/4/21.

    //  Copyright © 2017 super. All rights reserved.

    //   为了隐藏导航栏的底线

     

    import Foundation

    import UIKit

     

    extension UINavigationBar {

        // 隐藏线

        func hideBottomHairline() {

            let navigationBarImageView = hairlineImageViewInNavigationBar(view: self)

            navigationBarImageView!.isHidden = true

        }

        

        // 显示线

        func showBottomHairline() {

            let navigationBarImageView = hairlineImageViewInNavigationBar(view: self)

            navigationBarImageView!.isHidden = false

        }

        

        private func hairlineImageViewInNavigationBar(view: UIView) -> UIImageView? {

            if view.isKind(of: UIImageView.self) &&  view.bounds.height <= 1.0{

                return (view as! UIImageView)

            }

            

            let subviews = (view.subviews as [UIView])

            for subview: UIView in subviews {

                if let imageView: UIImageView = hairlineImageViewInNavigationBar(view: subview) {

                    return imageView

                }

            }

            return nil

        }

    }

     

    extension UIToolbar {

        

        func hideHairline() {

            let navigationBarImageView = hairlineImageViewInToolbar(view: self)

            navigationBarImageView!.isHidden = true

        }

        

        func showHairline() {

            let navigationBarImageView = hairlineImageViewInToolbar(view: self)

            navigationBarImageView!.isHidden = false

        }

        

        private func hairlineImageViewInToolbar(view: UIView) -> UIImageView? {

            if view.isKind(of: UIImageView.self) &&  view.bounds.height <= 1.0{

                return (view as! UIImageView)

            }

            let subviews = (view.subviews as [UIView])

            for subview: UIView in subviews {

                if let imageView: UIImageView = hairlineImageViewInToolbar(view: subview) {

                    return imageView

                }

            }

            return nil

        }

    }

     

     

    // 隐藏调用

      // 为了控制导航栏的状态颜色  底线

        override func viewWillAppear(_ animated: Bool) {

            super.viewWillAppear(true)

     

            UIApplication.shared.statusBarStyle = .lightContent

     

            let navigationBar = self.navigationController?.navigationBar

                navigationBar?.hideBottomHairline()

        }

     

     

    // 显示调用

       override func viewWillDisappear(_ animated: Bool) {

            let navigationBar = self.navigationController?.navigationBar

                navigationBar?.showBottomHairline()

        }

  • 相关阅读:
    boot文件上传的坑
    页面前端获取时间和数据库获取时间差八个小时 CST
    springcloud 学习
    springcloud 的eureka服务
    ROWNUM()应用案例-实现一个拉链表
    python dict 常用操作
    【转】团队项目的Git分支管理规范
    Python中使用cx_Oracle调用Oracle存储过程
    【转载】ORACLE 物化视图
    C# 加密解密
  • 原文地址:https://www.cnblogs.com/supersr/p/5379016.html
Copyright © 2011-2022 走看看