Swift : 如何在不添加工具栏的情况下更改导航控制器的高度
Swift : How to change navigation controller's height without adding a toolbar
如何在不添加工具栏的情况下更改导航控制器的高度?
这是我要构建的苹果 iBooks 应用程序的示例。
我有一个解决方案,但并不完美(在导航控制器下方添加了一个工具栏,但它非常难看)
我想这就是你想要的,
截图
你不能改变导航栏的高度,但你可以在它下面放一个视图,并使用自动布局和阴影使它看起来像navbar.Set它的一部分到你制作的class
写一个视图作为extendbar
class ExtendNavView:UIView{
override func willMoveToWindow(newWindow: UIWindow?) {
let scale = UIScreen.mainScreen().scale
self.layer.shadowOffset = CGSizeMake(0, 1.0/scale)
self.layer.shadowRadius = 0;
self.layer.shadowColor = UIColor.blackColor().CGColor
self.layer.shadowOpacity = 0.25
}
}
拖一个UIView放到navBar下面,然后设置autolayout让它一直在nav下面
更改 viewController
中的导航栏 属性
class ViewController: UIViewController {
override func viewDidLoad() {
self.navigationController?.navigationBar.translucent = false
self.navigationController?.navigationBar.shadowImage = UIImage(named: "TransparentPixel")
self.navigationController?.navigationBar.setBackgroundImage(UIImage(named:"Pixel"), forBarMetrics:UIBarMetrics.Default)
}
}
此处使用的两张图片(注:它们是半透明的)
像素
url=“http://i.stack.imgur.com/gFwyN.png”
透明像素
url = "http://i.stack.imgur.com/zpQw4.png "
你也可以看看苹果示例工程,你也可以在那里找到两张图片
https://developer.apple.com/library/ios/samplecode/NavBar/Introduction/Intro.html
如何在不添加工具栏的情况下更改导航控制器的高度? 这是我要构建的苹果 iBooks 应用程序的示例。 我有一个解决方案,但并不完美(在导航控制器下方添加了一个工具栏,但它非常难看)
我想这就是你想要的, 截图
你不能改变导航栏的高度,但你可以在它下面放一个视图,并使用自动布局和阴影使它看起来像navbar.Set它的一部分到你制作的class
写一个视图作为extendbar
class ExtendNavView:UIView{ override func willMoveToWindow(newWindow: UIWindow?) { let scale = UIScreen.mainScreen().scale self.layer.shadowOffset = CGSizeMake(0, 1.0/scale) self.layer.shadowRadius = 0; self.layer.shadowColor = UIColor.blackColor().CGColor self.layer.shadowOpacity = 0.25 } }
拖一个UIView放到navBar下面,然后设置autolayout让它一直在nav下面
更改 viewController
中的导航栏 属性class ViewController: UIViewController { override func viewDidLoad() { self.navigationController?.navigationBar.translucent = false self.navigationController?.navigationBar.shadowImage = UIImage(named: "TransparentPixel") self.navigationController?.navigationBar.setBackgroundImage(UIImage(named:"Pixel"), forBarMetrics:UIBarMetrics.Default) } }
此处使用的两张图片(注:它们是半透明的)
像素
url=“http://i.stack.imgur.com/gFwyN.png”
透明像素
url = "http://i.stack.imgur.com/zpQw4.png "
你也可以看看苹果示例工程,你也可以在那里找到两张图片 https://developer.apple.com/library/ios/samplecode/NavBar/Introduction/Intro.html