富文本属性-图文混排

作者: HeavenWong | 来源:发表于2016-03-15 17:22 被阅读250次

    图文混排

        // 图文混排
        NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc] init];
        // 1 - 你好
        NSAttributedString *first = [[NSAttributedString alloc] initWithString:@"你好"];
        [attributedText appendAttributedString:first];
    
        // 2 - 图片
        // 带有图片的附件对象
        NSTextAttachment *attachment = [[NSTextAttachment alloc] init];
        attachment.image = [UIImage imageNamed:@"header_cry_icon"];
        CGFloat lineH = label.font.lineHeight;
        attachment.bounds = CGRectMake(0, - ((label.xmg_height - lineH) * 0.5 - 1), lineH, lineH);
        // 将附件对象包装成一个属性文字
        NSAttributedString *second = [NSAttributedString attributedStringWithAttachment:attachment];
        [attributedText appendAttributedString:second];
    
        // 3 - 哈哈哈
        NSAttributedString *third = [[NSAttributedString alloc] initWithString:@"哈哈哈"];
        [attributedText appendAttributedString:third];
    
        label.attributedText = attributedText;
    
    Snip20160316_2.png
      UILabel *label = [[UILabel alloc] init];
      //    label.text = @"你好哈哈哈";
        NSMutableAttributedString *text =    [[NSMutableAttributedString alloc] initWithString:@"你好哈哈哈"];
        [text addAttribute:NSForegroundColorAttributeName value:[UIColor yellowColor] range:NSMakeRange(0, 3)];
        [text addAttribute:NSBackgroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(2, 3)];
        label.attributedText = text;
        label.frame = CGRectMake(100, 100, 100, 25);
        [self.view addSubview:label];
    
    Snip20160316_3.png
        UILabel *label = [[UILabel alloc] init];
        // 设置属性文字
        NSString *text = @"你好\n哈哈哈";
        NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc] initWithString:text];
        [attributedText addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:10] range:NSMakeRange(0, text.length)];
        [attributedText addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:13] range:NSMakeRange(3, 3)];
        label.attributedText = attributedText;
        // 其他设置
        label.numberOfLines = 0;
        label.textAlignment = NSTextAlignmentCenter;
        label.frame = CGRectMake(0, 0, 100, 40);
        [self.view addSubview:label];
        self.navigationItem.titleView = label;
    
    Snip20160316_4.png

    相关文章

      网友评论

      本文标题:富文本属性-图文混排

      本文链接:https://www.haomeiwen.com/subject/njkqlttx.html