UINavigationBar-使用总结

举报
清雨小竹 发表于 2022/09/25 02:02:29 2022/09/25
【摘要】 多视图应用程序中,我们常常使用到自定义UINavigationBar来完成导航条的设置。 1.获取导航条 UINavigationBar *navBar = self.navigationController.navigationBar; 2.设置导航条样式(使用系统自带样式) [navBar setBarStyle:UIBarStyl...

      多视图应用程序中,我们常常使用到自定义UINavigationBar来完成导航条的设置。
      1.获取导航条
      UINavigationBar *navBar = self.navigationController.navigationBar;
      2.设置导航条样式(使用系统自带样式)
      [navBar setBarStyle:UIBarStyleDefault];
      分别有如下几种样式:
      typedef NS_ENUM(NSInteger, UIBarStyle) {
          UIBarStyleDefault          = 0,
          UIBarStyleBlack            = 1,
          UIBarStyleBlackOpaque      = 1, // Deprecated. Use UIBarStyleBlack
          UIBarStyleBlackTranslucent = 2, // Deprecated. Use UIBarStyleBlack and set the translucent property to YES
      };
      从字面我们就能了解这4种样式的大概意思:
      分别为:
      UIBarStyleDefault:默认样式
      UIBarStyleBlack:黑色
      UIBarStyleBlackOpaque:黑色不透明
      UIBarStyleBlackTranslucent:黑色透明
      注意:我们发现,在后面两个标记为Deprecated,我们知道使用后面两种将不被提倡。
      从枚举中,我们也可以看出:UIBarStyleBlack=1和UIBarStyleBlackOpaque=1表示为一样的。
      后来,发现增加了一个方法:[navBar setTranslucent:YES];用来指示是否透明。
      所以,我们使用UIBarStyleDefault和UIBarStyleBlack来定义UINavigationBar样式,并且用setTranslucent:方法来设置透明与否。
      3.自定义导航条颜色
      如果,仅仅使用这4种(2种样式*是否透明),难免太逊了,必须能自定义UINavigationBar样式啊。
      if ([navBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]){
             // UIBarMetricsLandscapePhone
              [navBar setBackgroundImage:[UIImage imageNamed:@"图片名称"] forBarMetrics:UIBarMetricsDefault];
          }
      setBackgroundImage方法的第二个参数,需要解释一下:
      UIBarMetricsDefault:用竖着(拿手机)时UINavigationBar的标准的尺寸来显示UINavigationBar
      UIBarMetricsLandscapePhone:用横着时UINavigationBar的标准尺寸来显示UINavigationBar
      希望对您有所帮助!
  
 



http://blog.sina.com.cn/s/blog_7b9d64af01019zsi.html

文章来源: zzzili.blog.csdn.net,作者:清雨小竹,版权归原作者所有,如需转载,请联系作者。

原文链接:zzzili.blog.csdn.net/article/details/8555804

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。