当前位置:首页 > 移动开发 > 正文

ios11的新特性——prefersLargeTitles属性

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa; background-color: #ffffff } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #008400; background-color: #ffffff } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3e1e81; background-color: #ffffff } span.s1 { color: #ba2da2 } span.s2 { color: #000000 } span.s3 { color: #78492a } span.s4 { color: #d12f1b } span.s5 { color: #703daa }

作为一个ios开发的新手,很不幸又很幸运的,赶上了ios 11的发版。不幸的之前版本的属性还没熟练,大多还不熟悉,又发版了新的版本,而有关的属性,对于大佬们,认为很简单,很正常的东西,只提了一句,有的甚至一句都没提,导致我们这些刚接触ios的新人来说,真心不知道从何入手。而幸运的是,新特性又省去很多代码,有的功能几行就搞定,使得我这个新手一直认为我的代码是错的,是不靠谱的。

我接触的第一个新特性就是prefersLargeTitles属性,他是BOOL的。

self.navigationController.navigationBar.prefersLargeTitles = YES;//这句话表示是否显示大标题

self.navigationItem.title = @"设置";//设置标题

self.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeAutomatic;//这个是标题显示的方式,下面会详细的说

当prefersLargeTitles设置YES时是显示大标题,如下图所示:

技术分享图片

 

为NO时是不显示大标题

技术分享图片

 

 

而largeTitleDisplayMode是配合prefersLargeTitles属性的,只要当prefersLargeTitles为YES时才生效,largeTitleDisplayMode有三个模式:

 

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3e1e81; background-color: #ffffff }

UINavigationItemLargeTitleDisplayModeNever是总是显示小标题

 

UINavigationItemLargeTitleDisplayModeAlways:总是显示大标题

 

UINavigationItemLargeTitleDisplayModeAutomatic:自动显示大标题或小标题。用我的话来说:初始时是大标题,当滑动使大标题隐藏时显示小标题。

 

而更改大标题颜色,是用LargeTitleTextAttributes这个属性(之前翻了好多的帖子,不是说不能改的就是说用setLargeTitleTextAttributes这个属性,也不说怎么用,哎,感觉要逼死小白了)。下面是我设置大标题的属性。

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa; background-color: #ffffff } span.s1 { color: #000000 } span.s2 { color: #ba2da2 } span.s3 { color: #3e1e81 } span.s4 { color: #272ad8 }

 [self.navigationController.navigationBar setLargeTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor], NSForegroundColorAttributeName,[UIFont systemFontOfSize:18.0f],NSFontAttributeName,nil]];

 

 

第一次写这种东西,感觉自己读的都有点乱。

 

文章参考:http://www.jianshu.com/p/d4a17c32abdf

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3e1e81; background-color: #ffffff }

 

 

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3e1e81; background-color: #ffffff }