大标题(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
网友评论