2015-10-27
- (void)layoutSubviews { skContentView.backgroundColor = self.backgroundColor; skContentView.frame = self.bounds; NSMutableAttributedString * string = [[ NSMutableAttributedString alloc ] initWithString:@"123456789101112计算" attributes:nil ] ; [string addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:16.0] range:NSMakeRange(0,string.length-1)]; MMTextAttachment * textAttachment = [[ MMTextAttachment alloc ] initWithData:nil ofType:nil ] ; UIImage * smileImage = [ UIImage imageNamed:@"a.jpg" ] ; //my emoticon image named a.jpg textAttachment.image = smileImage ; NSAttributedString * textAttachmentString = [ NSAttributedString attributedStringWithAttachment:textAttachment ] ; [ string insertAttributedString:textAttachmentString atIndex:6 ] ; _skInputTextView.attributedText = string ; }
@interface MMTextAttachment : NSTextAttachment { } @end @implementation MMTextAttachment //图片大小与文字保持一致 - (CGRect)attachmentBoundsForTextContainer:(NSTextContainer *)textContainer proposedLineFragment:(CGRect)lineFrag glyphPosition:(CGPoint)position characterIndex:(NSUInteger)charIndex NS_AVAILABLE_IOS(7_0) { return CGRectMake( 0 , 0 , lineFrag.size.height , lineFrag.size.height ); } @end