Cómo detectar la eliminación de imágenes en UITextView

Si agrego una image a una UITextView como esta:

NSTextAttachment *textAttachment = [[NSTextAttachment alloc] init]; textAttachment.image = image; NSAttributedString *attrStringWithImage = [NSAttributedString attributedStringWithAttachment:textAttachment]; [myString appendAttributedString:attrStringWithImage]; self.inputTextView.attributedText = myString; 

¿Cómo puedo luego detectar que la image se ha eliminado a través del usuario que presionó el button Atrás en el keyboard?

¿Utilizaré el siguiente?

 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 

¿Si es así, cómo?

Hice esto:

 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{ [self.textView.attributedText enumerateAttribute:NSAttachmentAttributeName inRange:NSMakeRange(0, self.textView.attributedText.length) options:0 usingBlock:^(id value, NSRange imageRange, BOOL *stop){ if (NSEqualRanges(range, imageRange) && [text isEqualToString:@""]){ //Wants to delete attached image }else{ //Wants to delete text } }]; return YES; } 

¡Espero que te pueda ayudar!

Usando swift, así es como eliminé las imágenes (agregadas como NSTextAttachment) de UITextView:

 func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool { // empty text means backspace if text.isEmpty { textView.attributedText.enumerateAttribute(NSAttachmentAttributeName, inRange: NSMakeRange(0, textView.attributedText.length), options: NSAttributedStringEnumerationOptions(rawValue: 0)) { [weak self] (object, imageRange, stop) in if NSEqualRanges(range, imageRange) { self?.attributedText.replaceCharactersInRange(imageRange, withString: "") } } } return true }