EasyNavigationbar
定制UINavigationBar样式,可全局统一设置默认样式,在各个页面可以灵活定制自己的样式。
设置说明
要使用CocoaPods将EasyNavigationBar集成到您的Xcode项目中,在您的Podfile中指定它
pod 'EasyNavigationBar',然后在您的代码中添加导入语句 import EasyNavigationBar。
手动操作
将 EasyNavigationBar.swift
添加到您的项目中。
基本示例
- 常规样式
func setNavbarAppearance() {
// 导航栏颜色
navBarBarTintColor = .white
// 导航栏透明度
navBarBackgroundAlpha = 1
// 导航栏两边按钮颜色
navBarTintColor = .black
// 导航栏上标题颜色
navBarTitleColor = .black
// 导航栏底部分割线是否隐藏
navBarShadowImageHidden = true;
// 状态栏是 default 还是 lightContent
statusBarStyle = .default
}
- 自定义样式
private let HEADER_HEIGHT:CGFloat = 260
private let NAVBAR_COLORCHANGE_POINT:CGFloat = HEADER_HEIGHT - CGFloat(kNavBarBottom * 2)
func setNavbarAppearanc() {
// 设置导航栏颜色
navBar.barBackgroundColor = UIColor(red: 247/255.0, green: 247/255.0, blue: 247/255.0, alpha: 1.0)
// 设置初始导航栏透明度
navBar.easy_setBackgroundAlpha(alpha: 0)
// 设置标题文字颜色
navBar.titleLabelColor = UIColor.white
navBar.easy_setRightButton(title: "设置", titleColor: .white)
statusBarStyle = .lightContent
navBar.onRightButtonDidClick = {
}
}
// MARK: - ScrollViewDidScroll
extension ViewController
{
func scrollViewDidScroll(_ scrollView: UIScrollView)
{
let offsetY = scrollView.contentOffset.y
if (offsetY > NAVBAR_COLORCHANGE_POINT)
{
let alpha = (offsetY - NAVBAR_COLORCHANGE_POINT) / CGFloat(kNavBarBottom)
navBar.easy_setBackgroundAlpha(alpha: alpha)
navBar.easy_setTintColor(color: UIColor.black.withAlphaComponent(alpha))
navBar.titleLabelColor = UIColor.black.withAlphaComponent(alpha)
statusBarStyle = .default
} else {
navBar.easy_setBackgroundAlpha(alpha: 0)
navBar.easy_setTintColor(color: .white)
navBar.titleLabelColor = .white
statusBarStyle = .lightContent
}
}
}
如果您有疑问,可以看到演示。
兼容性
- 版本1.0.1需要Swift 4.2和Xcode 10。