码迷,mamicode.com
首页 > 其他好文 > 详细

用TextKit实现表情,图片,文字混排

时间:2015-04-28 20:31:37      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:

用Xcode以前本身自带的coreText,coreImage,实现图文混排,代码量非常大,不容易理解,

而Textkit是iOS7新推出的类库,其实是在之前推出的CoreText上的封装, TextKit并没有新增的类,他是在原有的文本显示控件上的封装,可以使用平时我们最喜欢使用的 UILabel,UITextField,UITextView里面就可以使用了。

 

   //传你需要处理的文本内容

    NSString * str = @"nni-hao-textkit";

 

    //创建NSMutableAttributedString

    // 这是所有TextKit的载体,所有的信息都会输入到NSAttributedString里面,然后将这个String输入到Text控件里面就可以显示了。    

    NSMutableAttributedString * attributed=[[NSMutableAttributedString alloc] initWithString:str];

    //给所有字符设置字体为

    //给所有字符设置字体为Zapfino,字体为30

    [attributed addAttribute: NSFontAttributeName value: [UIFont fontWithName: @"Zapfino" size: 30]

                            range: NSMakeRange(0, str.length)];

    //分段控制,最开始4个字符颜色设置成黄色

    [attributed addAttribute: NSForegroundColorAttributeName value: [UIColor yellowColor] range: NSMakeRange(0, 4)];

    //分段控制,第5个字符开始的3个字符,即第567字符设置为红色

    [attributed addAttribute: NSForegroundColorAttributeName value: [UIColor redColor] range: NSMakeRange(4, 3)];

    //创建UITextView来显示

    UITextView * lable = [[UITextView allocinitWithFrame:self.view.bounds];

    lable.textAlignment = UITextAlignmentCenter;

    lable.attributedText = attributed;

    [self.view addSubview:lable];

   //控制台显示

                   技术分享

   //*********************************************************************************    

    //创建图片附件

    NSTextAttachment *attach = [[NSTextAttachment alloc] init];

 

    attach.image = [UIImage imageNamed:@"3.jpg"];

    attach.bounds = CGRectMake(0, 70, 50, 50);

    

    NSAttributedString * attachstring = [NSAttributedString attributedStringWithAttachment:attach];

    

    [attributed appendAttributedString:attachstring];

   //控制台显示:

                             技术分享

   

用TextKit实现表情,图片,文字混排

标签:

原文地址:http://www.cnblogs.com/lmyailgs/p/4463715.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!