时间:2021-09-24 10:58:22 | 栏目:iOS代码 | 点击:次
本文介绍了IOS11新特性之larget title的实现,分享给大家,具体如下:
大标题(larget title)
图层解析
小标题所处.jpg
这就是我们平常所见的Nav的title
大标题所处.jpg
这是IOS11新特性larget title
处于哪里.jpg
他们其实都在navigationBar这个view上,但是大标题先添加在navigationBar上的,看下图便知道了
上拉到顶部.png
只不过是小标题把大标题遮盖住了
//必须要设置navigationBar的prefersLargeTitles属性为YES才能够显示出大标题 self.navigationController.navigationBar.prefersLargeTitles = YES; //样式是navigationItem的枚举 有三种 typedef NS_ENUM(NSInteger, UINavigationItemLargeTitleDisplayMode) { /// 自动模式依赖上一个 item 的特性 UINavigationItemLargeTitleDisplayModeAutomatic, /// 针对当前 item 总是启用大标题特性 UINavigationItemLargeTitleDisplayModeAlways, /// Never UINavigationItemLargeTitleDisplayModeNever, } self.navigationController.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeAlways; //为大标题添加富文本属性 [self.navigationController.navigationBar setLargeTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor redColor],NSForegroundColorAttributeName,[UIFont systemFontOfSize:20.f],NSFontAttributeName,nil]];
APPStore的UI如何实现?
主要是大标题所在的右边有一个头像按钮
我给出一个思路吧,首先我没有找到大标题所处的View,大概是苹果没有对外开放这个view。但是我们已经知道他们都在navigationBar下了,何不直接取出navigationBar的子视图获取大标题所在的view呢?然后把你想要设置的按钮添加到该view上,最后只需要监听滚动去控制他们是否hidden