Swift_ios_开发之UINavigationController的常用属性那些事
发布时间:2020-12-14 06:50:11 所属栏目:百科 来源:网络整理
导读:1.导航栏是否隐藏 self.navigationController?.navigationBar.hidden = false 这里要注意一点, navigationBar在页面中是与基View平级 的,所以如果导航栏一开始是隐藏的,当页面加载完毕又想让他显示,这时候会发现基页面整体向下移动了,并且原来的内容会
1.导航栏是否隐藏self.navigationController?.navigationBar.hidden = false 这里要注意一点,navigationBar在页面中是与基View平级的,所以如果导航栏一开始是隐藏的,当页面加载完毕又想让他显示,这时候会发现基页面整体向下移动了,并且原来的内容会有一部分显示不完整!经过调试发现,如果不隐藏导航栏,基view的高度是屏幕高度与导航栏高度的差;如果隐藏了导航栏,基view的高度就是整个屏幕的高度。所以一开始隐藏了导航栏,页面加载完成再显示,就需要把基view的高度减去导航栏的高度! 2.导航栏的最底部颜色设置//backgroundColor 是最底下的color self.navigationController?.navigationBar.backgroundColor = UIColor.redColor() 3.导航栏的表层颜色,即首先看到的颜色//barTintColor 是表层颜色 self.navigationController?.navigationBar.barTintColor = UIColor.grayColor() 4.导航栏中间标题title的颜色,大小,字体设置self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName:UIColor.blueColor(),NSFontAttributeName:UIFont(name: "Heiti SC",size: 24.0)!] 5.导航栏隐藏左边backitem,即leftbarbuttonitem//完全隐藏backItem// self.navigationItem.setHidesBackButton(true,animated: true) 6.导航栏leftbarbuttonitem的颜色设置swiftself.navigationController?.navigationBar.tintColor = UIColor.whiteColor() 7.导航栏leftbarbuttonitem的字体,颜色,大小设置self.navigationItem.leftBarButtonItem?.setTitleTextAttributes([NSForegroundColorAttributeName:UIColor.blueColor(),NSFontAttributeName: UIFont(name: "Chalkduster",size: 13)!],forState: UIControlState.Normal) 8.导航栏重新定义leftbarbuttonitem//重新定义backItem,将覆盖原来的BackItem.与storyboard中拖入一个item,效果一样。都是覆盖原来的backitem。 //第一种代码定义方式 self.navigationItem.setLeftBarButtonItem(UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Add,target: self,action: "function"),animated: true) //第二种代码定义方式 self.navigationItem.leftBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Add,action: "function") //第三种代码定义的方式 self.navigationItem.setLeftBarButtonItem(UIBarButtonItem(title: "<Grandre",style: UIBarButtonItemStyle.Plain,animated: true) 9.导航栏设置成透明//将导航栏设置成透明 self.navigationController?.navigationBar.setBackgroundImage(UIImage(),forBarMetrics: UIBarMetrics.Default) self.navigationController!.navigationBar.shadowImage = UIImage() self.navigationController?.navigationBar.translucent = true 如果对你有帮助,记得mark一下哦!
文/ChinaSwift(简书作者) 原文链接:http://www.jianshu.com/p/738d9387ed12/comments/1185395 著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |