ios7以上自定义导航栏标题的字体大小及颜色的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios7以上自定义导航栏标题的字体大小及颜色的方法相关的知识,希望对你有一定的参考价值。

自定义导航栏的字体和颜色,只需要自定义一个lable,然后将lable添加到导航栏的titleview中就可以了

 

代码如下

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];//这个frame是初设的,没关系,后面还会重新设置其size。
    [label setNumberOfLines:0];
    UIFont *font = [UIFont fontWithName:@"Arial" size:17];
    label.font = font;
    label.text = @"二维码结果";
    CGSize size = CGSizeMake(320,2000); //设置一个行高上限
    NSDictionary *attribute = @{NSFontAttributeName: label.font};
    CGSize labelsize = [label.text boundingRectWithSize:size options: NSStringDrawingTruncatesLastVisibleLine|NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:attribute context:nil].size;  //动态根据文本内容设置lable的大小
    [label setFrame:CGRectMake(0,0, labelsize.width, labelsize.height)];
self.navigationItem.titleView = label;

 

假如想获取ios系统本身所自带的全部字体,并且在调试模式下输出,可使用以下代码

NSArray* fontFamilys = [UIFont familyNames];
    for (int i = 0; i<[fontFamilys count]; i++) {
        NSString* family = [fontFamilys objectAtIndex:i];
        NSLog(@"系统自带字体有:%@rn=====",family);
        NSArray* fonts = [UIFont fontNamesForFamilyName:family];
        for (int j = 0; j<[fonts count]; j++) {
            NSLog(@"%@",[fonts objectAtIndex:j]);
        }
    }

 

以上是关于ios7以上自定义导航栏标题的字体大小及颜色的方法的主要内容,如果未能解决你的问题,请参考以下文章

iOS中设置导航栏标题的字体颜色和大小

转iOS中设置导航栏标题的字体颜色和大小

自定义iOS7导航栏背景,标题和返回按钮文字颜色

转自定义iOS7导航栏背景,标题和返回按钮文字颜色 -- 不错不错!!

iOS开发关于UISearchBar自定义取消按钮的颜色,字体,大小

iOS 7导航栏barTintColor - 能够让它从上到下淡化吗?