您的位置:首页 > Web前端 > CSS

【iOS技术文章】iOS Label的几种样式

2017-02-20 18:44 316 查看
 一、添加自定义字体:

  因为系统自带字体的局限性,有时候我们在开发中需要添加一些特殊要求的自定义字体。

  首先我们先要去网上下载我们所需要的自定义字体,后缀名是 otf 的。



下载字体

  下载好之后,把这个 otf 文件直接拖进工程当中。



添加 otf 文件

  点击这个 otf 文件,可以看到字体是什么样的(如上图右边所示)。

  接着,我们需要配置好 Info.plist 文件,添加 Fonts provided by application 字段,类型为 Array,下面是我们需要添加的字体名。



配置 Info.plist 文件

  做完这些,我们可以查看一下,是否现在系统中已经添加了我们拖进来的字体,打印所有字体看一下。



打印所有字体

  OK,确认已经成功,那现在我们就可以使用这个自定义的字体了。
// 自定义字体

label.font = [UIFont fontWithName:@"Fh_Scribble" size:18];


  效果如下:



自定义字体

  二、部分字体改变颜色或 Font

  1、改变颜色



改变颜色

  2、改变 Font

  这两个基本一样,就是改一下里面的字段名就可以了。



改变 Font

  可以看一下展示效果:



部分字体改变颜色或 Font

  三、左右两端对齐

  一般像我们平时要么是左对齐,要么是右对齐,或者是居中,但是如果是展示的是英文的话,会因为单词的长短,导致自动换行,后面经常会长短不一,影响 UI 美观。

  虽然我们设置的时候有这个属性 label2.textAlignment = NSTextAlignmentJustified;

  但是当我们设置完会发现没效果。

  如果需要设置左右两端对齐,需要这样:



设置左右两端对齐

  方便大家,附上代码:
NSMutableAttributedString *changeColorString1 =[[NSMutableAttributedString alloc]initWithString:label2.text];
  NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init];
  style.alignment = NSTextAlignmentJustified; // 对齐方式, 设置为两端对齐。
  style.paragraphSpacing = 0; // 段落后的间距
  style.paragraphSpacingBefore = 0; // 段落前的间距
  style.firstLineHeadIndent = 0; // 段落第一句缩进
  style.headIndent = 0; // 头部缩进(不包括段落第一句)

  NSDictionary *styleDic = @{NSForegroundColorAttributeName : [UIColor blackColor],
                                                        NSFontAttributeName : label2.font,
                                                        NSParagraphStyleAttributeName : style,
                                                        NSUnderlineStyleAttributeName : [NSNumber numberWithInt:NSUnderlineStyleNone]};
  [changeColorString1 setAttributes:styleDic range:NSMakeRange(0, label.text.length)];

  label2.attributedText=changeColorString1;


  可以比较一下效果:



设置两端对齐效果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: