LSCustomNavigation
它是什么
Cocoa的原生导航系统,比如 UINavigationController
,UINavigationBar
和 UINavigationItem
,在自定义方面相对困难,例如在某些特定场景下设置不同高度。《LSCustomNavigation》就是为了简化这个过程而存在的,同时保留了Cocoa的过渡样式。未来还将提供更多的自定义过渡样式。
基本用法
使用 LSCustomNavigationController
作为您的导航控制器。您可以使用它与原生 UINavigationController
一样的方式。
为了自定义导航栏,嵌入在导航系统中的视图控制器需要遵守 LSCustomNavigationProtocol
协议并提供一个 LSNavigationItem
实例,其属性决定了当前视图控制器推进到导航系统或从前一个视图控制器弹出到时导航栏的显示方式。如果视图控制器不遵守 LSCustomNavigationProtocol
协议,将使用默认项。
#pragma mark - LSCustomNavigationProtocol
- (LSNavigationItem *)ls_customNavigationItem {
LSNavigationItem *navigationItem = [[LSNavigationItem alloc] init];
navigationItem.leftTitle = @"VCA";
navigationItem.title = @"This is A";
navigationItem.titleColor = [UIColor orangeColor];
navigationItem.leftTitleColor = [UIColor orangeColor];
UISwitch *UIswitch = [[UISwitch alloc] initWithFrame:CGRectMake(0, 0, 80, 40)];
navigationItem.customTitleView = UIswitch;
navigationItem.barTranslucent = NO;
navigationItem.barBackgroundColor = [UIColor cyanColor];
return navigationItem;
}
您还可以修改 [LSNavigationItem appearance]
的属性以配置全局导航栏外观
[LSNavigationItem appearance].barBackgroundColor = [UIColor lightGrayColor];
系统要求
- iOS 8.0 +