使用 self.title = @"标题"的原理是调用了视图控制器的@property(nullable, nonatomic,copy) NSString *title; 的方法来改变标题;
也就是使用 self.title = @"标题" == [self setTitle:@"首页"] 这个方法就是继承了视图控制器的方法
-
普通使用
- (void)viewDidLoad { [super viewDidLoad]; self.title = @"标题" } -
定义样式
UILabel *titleNav = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 200, 30)]; titleNav.text = @"标题"; titleNav.textAlignment = NSTextAlignmentCenter; titleNav.backgroundColor = [UIColor orangeColor]; titleNav.textColor = [UIColor whiteColor]; self.navigationItem.titleView = titleNav; -
定义一个父类来覆盖视图控制器的方法 ,作用于公共的类
//方法 -(void)setTitle:(NSString *)title{ UILabel *titleNav = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 200, 30)]; titleNav.text =title; titleNav.textAlignment = NSTextAlignmentCenter; titleNav.backgroundColor = [UIColor orangeColor]; titleNav.textColor = [UIColor whiteColor]; self.navigationItem.titleView = titleNav; } //子页面调用 1\. 在.h文件 #import “公共类名” #import "baseController.h" NS_ASSUME_NONNULL_BEGIN @interface “当前类名” : “公共类名” @end NS_ASSUME_NONNULL_END 2\. 在.m文件调用 self.title = @"标题" 会自动继承父类的方法