自定义UINavigationController
关键代码:
1、设置颜色
NSDictionary *dict = @{NSForegroundColorAttributeName: [UIColor whiteColor],NSFontAttributeName:[UIFont systemFontOfSize:18.0]};//统一uinavigationbar 样式
if (@available(iOS 15.0, *)) {
UINavigationBarAppearance *barApp = [UINavigationBarAppearance new];
barApp.backgroundColor = [UIColor navigationbarColor];
barApp.titleTextAttributes = dict;
self.navigationBar.scrollEdgeAppearance = barApp;
self.navigationBar.standardAppearance = barApp;
}else{
[self.navigationBar setTitleTextAttributes:dict];
}
[self.navigationBar setTintColor:[UIColor whiteColor]];
self.navigationBar.translucent = NO;
[self.navigationBar setBarTintColor:[UIColor navigationbarColor]];
2.设置背景图片之类
UIImage *backgroundImage = [UIImage imageNamed:@"gzr1.jpg"];
UIImage *symbolImage = [UIImage imageNamed:@"symbol"];
NSString *titleString = @"XXXXXXXXXX";
UIImage *combineImage = [self addImage:backgroundImage byImage:symbolImage title:titleString];
if (@available(iOS 15.0, *)) {
UINavigationBarAppearance *barApp = [UINavigationBarAppearance new];
[barApp setBackgroundImage:backImage];
self.navigationBar.scrollEdgeAppearance = barApp;
self.navigationBar.standardAppearance = barApp;
}else{
[self.navigationBar setBackgroundImage:backImage forBarMetrics:UIBarMetricsDefault];
}
本文介绍了如何在iOS 15及以上版本中使用UINavigationBarAppearance API自定义UINavigationController的标题颜色、背景图片,并在不同版本间保持一致性。同时展示了如何设置滚动边框和标准外观。

2438

被折叠的 条评论
为什么被折叠?



