用TextKit实现表情,图片,文字混排_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 用TextKit实现表情,图片,文字混排

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

 2015/4/28 19:17:18  恣愛仪  程序员俱乐部  我要评论(0)
  • 摘要:用Xcode以前本身自带的coreText,coreImage,实现图文混排,代码量非常大,不容易理解,而Textkit是iOS7新推出的类库,其实是在之前推出的CoreText上的封装,TextKit并没有新增的类,他是在原有的文本显示控件上的封装,可以使用平时我们最喜欢使用的UILabel,UITextField,UITextView里面就可以使用了。//传你需要处理的文本内容NSString*str=@"nni-hao-textkit"
  • 标签:实现 图片

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

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

 

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

class="p1">    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];

   //控制台显示:

                             

   

发表评论
用户名: 匿名