透明导航栏Swift iOS

胜利者
  1. 是项目目前的样子
  2. 这是我使用的代码

    func styleNavBar() {
    let navigationBarAppearace = UINavigationBar.appearance()
    navigationBarAppearace.tintColor = UIColor(red:1.0, green:1.0, blue:1.0, alpha:1.0)
    navigationBarAppearace.titleTextAttributes = [NSForegroundColorAttributeName:UIColor(red:1.00, green:1.00, blue:1.00, alpha:1.0)]
    navigationBarAppearace.translucent = true
    
    navigationBarAppearace.backgroundColor = UIColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 0.3)
    navigationBarAppearace.setBackgroundImage(UIImage(), forBarMetrics: .Default)}
    

我试图删除以下代码,但是看起来像这样

navigationBarAppearace.setBackgroundImage(UIImage(), forBarMetrics: .Default)

我的问题是,我如何navbar才能填补顶部?仍然有相同的外观

苏尼尔·沙尔玛(Sunil Sharma)

首先,创建一个扩展名,UIImage以使用指定大小的纯色创建图像。将此扩展保留在类标签的任何ViewController中

extension UIImage {

    class func imageWithColor(color: UIColor, size: CGSize) -> UIImage {
    let rect = CGRect(x: 0, y: 0, width: size.width, height: size.height)
        UIGraphicsBeginImageContextWithOptions(size, false, 0)
        color.setFill()
        UIRectFill(rect)
    let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()!
        UIGraphicsEndImageContext()
        return image
    }
}

然后使用以下方法来自定义导航栏

func styleNavBar() {
    let navigationBarAppearace = UINavigationBar.appearance()
    navigationBarAppearace.tintColor = UIColor(red:1.0, green:1.0, blue:1.0, alpha:1.0)
    navigationBarAppearace.titleTextAttributes = [NSForegroundColorAttributeName:UIColor(red:1.00, green:1.00, blue:1.00, alpha:1.0)]
    navigationBarAppearace.isTranslucent = true

    let colorImage = UIImage.imageWithColor(color: UIColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 0.3), size: CGSize(width: UIScreen.main.bounds.width, height: 64))
    navigationBarAppearace.setBackgroundImage(colorImage, for: .default)
}

希望这能解决您的问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Swift - 在 iOS 中使导航栏透明的问题

来自分类Dev

透明导航栏iOS 13

来自分类Dev

Xamarin iOS 透明导航栏

来自分类Dev

iOS中的半透明导航栏模糊

来自分类Dev

导航栏未显示iOS Swift

来自分类Dev

如何创建固定的导航栏iOS Swift

来自分类Dev

在 iOS swift 中设计导航栏

来自分类Dev

如何在iOS 10中使导航栏透明

来自分类Dev

使导航栏对于iOS 8.1中的下图透明

来自分类Dev

iOS双导航栏通过设置半透明关闭

来自分类Dev

iOS-内容上的半透明导航栏

来自分类Dev

iOS 13导航栏问题-导航栏的一部分变得透明

来自分类Dev

iOS 7 UITableView使用透明的导航栏和工具栏

来自分类Dev

ios导航栏用法

来自分类Dev

在iOS Swift中更改导航栏项的alpha值

来自分类Dev

我如何在Swift iOS的导航栏中使用图像

来自分类Dev

iOS8 Swift UISearchController隐藏导航栏

来自分类Dev

在iOS Swift中更改导航栏项的alpha值

来自分类Dev

如何在iOS 7的导航栏上获得模糊和半透明的效果?

来自分类Dev

透明/模糊导航栏的iOS 7视图控制器布局问题

来自分类Dev

导航栏iOS 7中的半透明和自定义图像

来自分类Dev

Xamarin.Forms-如何在iOS和Android上使导航/系统栏透明

来自分类Dev

隐藏导航栏时隐藏状态栏-SWIFT iOS8

来自分类Dev

iOS 7导航栏SKStoreProductViewController

来自分类Dev

iOS导航栏VS UIToolBar

来自分类Dev

iOS导航栏VS UIToolBar

来自分类Dev

iOS滑出侧边栏导航栏问题

来自分类Dev

导航栏中的iOS搜索栏

来自分类Dev

iOS 8 Swift Xcode 6-设置顶部导航栏背景颜色和高度