2016-07-20 3 views
2

Я делаю заметку, принимая приложение, но я столкнулся с проблемой.Как добавить изображение в UITextView?

Я хочу поместить картинку в UITextView. Я использовал NSAttributedString, чтобы поместить изображение в UITextView но когда я кладу изображение из imagepicker, размер изображения слишком велик, как этот

image

Я хочу, чтобы сделать его как зеницу отмечает приложение

image2

Как это понять?

let images = selectedImage 
    let attachment = NSTextAttachment() 

    attachment.image = images 

    let attString = NSAttributedString(attachment: attachment) 

    textView.textStorage.insertAttributedString(attString, atIndex: textView.selectedRange.location) 

ответ

2

Это может быть полезно для вас

let textView = UITextView(frame: CGRectMake(50, 50, 200, 300)) 
let attributedString = NSMutableAttributedString(string: "before after") 
let textAttachment = NSTextAttachment() 
textAttachment.image = UIImage(named: "sample_image.jpg")! 

let oldWidth = textAttachment.image!.size.width; 

let scaleFactor = oldWidth/(textView.frame.size.width - 10); //for the padding inside the textView 
textAttachment.image = UIImage(CGImage: textAttachment.image!.CGImage, scale: scaleFactor, orientation: .Up) 
var attrStringWithImage = NSAttributedString(attachment: textAttachment) 
attributedString.replaceCharactersInRange(NSMakeRange(6, 1), withAttributedString: attrStringWithImage) 
textView.attributedText = attributedString; 
self.view.addSubview(textView) 
+0

Спасибо! Оно работает!! но когда я сохраняю ** NSAttributedString ** до ** NSUserDefaults **, и когда я снова загружаю, размер изображения снова большой! – Daniel

+0

@ Даниэль .. Я тоже сталкиваюсь с той же проблемой. Каково было решение? – iOS

+0

См. Этот ответ http://stackoverflow.com/a/30417310/2564702 –