use*_*146 9 iphone objective-c
我有一个简单的导航应用程序的iphone/objective-c
在推入视图的各种UIViewControllers中,我可以使用类似的东西在标题栏中设置文本
self.title = @"blah blah blah"
Run Code Online (Sandbox Code Playgroud)
有没有办法控制标题栏文本中标题的字体和字体大小?
谢谢!
roo*_*ell 17
调整navcontroller标题文本大小的正确方法是设置navigationItem的titleView属性
像这样(在viewDidLoad中)
UILabel* tlabel=[[UILabel alloc] initWithFrame:CGRectMake(0,0, 300, 40)];
tlabel.text=self.navigationItem.title;
tlabel.textColor=[UIColor whiteColor];
tlabel.backgroundColor =[UIColor clearColor];
tlabel.adjustsFontSizeToFitWidth=YES;
self.navigationItem.titleView=tlabel;
Run Code Online (Sandbox Code Playgroud)
您可能想要压印标签,使其看起来不模糊和平坦:
- (void)viewDidLoad
{
[super viewDidLoad];
CGRect frame = CGRectMake(0, 0, 400, 44);
UILabel *label = [[[UILabel alloc] initWithFrame:frame] autorelease];
label.backgroundColor = [UIColor clearColor];
label.font = [UIFont boldSystemFontOfSize:18.0];
label.textAlignment = UITextAlignmentCenter;
label.textColor = [UIColor whiteColor];
label.text = self.navigationItem.title;
// emboss so that the label looks OK
[label setShadowColor:[UIColor darkGrayColor]];
[label setShadowOffset:CGSizeMake(0, -0.5)];
self.navigationItem.titleView = label;
}
Run Code Online (Sandbox Code Playgroud)
您可以将任何 UIView 分配给导航控制器的标题区域。
创建一个UILabel并根据需要设置其字体和大小,然后将其分配给 UIViewController 的navigationItem.titleView属性。确保 UILabel 的背景颜色设置为clearColor。
这只适用于顶级导航视图。当用户深入视图控制器层次结构并显示“后退”按钮时,将忽略备用 titleView 并显示常规文本标签。
| 归档时间: |
|
| 查看次数: |
16990 次 |
| 最近记录: |