0
NSAttributedString
には、NSTextAttachment
として添付された画像が含まれている可能性があります。実際にそのような画像が添付されているかどうかを確認し、そのような場合は削除する必要があります。私は成功していない関連記事を探していましたが、どうすればこのことができますか?NSAttributedStringにNSTextAttachmentが含まれているかどうかを検出して削除するにはどうすればよいですか?
EDIT:は、私はこれをしようとしている:
let mutableAttrStr = NSMutableAttributedString(attributedString: textView.attributedText)
textView.attributedText.enumerateAttribute(NSAttachmentAttributeName, in: NSMakeRange(0, textView.attributedText.length), options: NSAttributedString.EnumerationOptions(rawValue: 0)) { (value, range, stop) in
if (value as? NSTextAttachment) != nil {
mutableAttrStr.replaceCharacters(in: range, with: NSAttributedString(string: ""))
}
}
textView.attributedText
に複数の添付ファイルが含まれている場合は(私が見るそのstring
で\u{ef}
いくつか)、私は条件if (value as? NSTextAttachment) != nil
数回に一致するように列挙を期待そのコードブロックは一度だけ実行されます。
どのようにすべての添付ファイルを削除できますか?
あなたが任意の添付ファイルの文字を検索し、削除することもできます:https://developer.apple.com/reference/uikit/nstextattachment/1508411-attachment_character – MathewS
列挙'NSAttachmentAttributeName'のattributedStringを削除して削除します。ここでは、コードを見ることができます:http://stackoverflow.com/questions/29152660/extract-uiimage-from-nsattributed-string/29153172#29153172 – Larme
@MathewSありがとう、どのような文字を列挙する最も適切な方法は、 'NSAttachmentCharacter'が存在するかどうかを調べるNSAttributedString'? – AppsDev