12

I have a custom keyboard and I have to perform backspace action on textview having nsmutableattributed string as a text (combination of character and nstextattachments)

Yucel Bayram
  • 1,653
  • 2
  • 22
  • 41
Alok Singh
  • 896
  • 6
  • 18

2 Answers2

13

As per Moxy: if your last character is large enough not to fit within a single UTF-16 unit then Dave's method will just truncate the description of that character. Emojis are an example but there are a bunch more.

So you'll more likely want:

[string deleteCharactersInRange:
    [string.string rangeOfComposedCharacterSequenceAtIndex:string.length - 1]]
Tommy
  • 99,986
  • 12
  • 185
  • 204
9

Swift 4

mutableAttributedString.deleteCharacters(in: NSRange(location:(mutableAttributedString.length) - 1,length:1))
Yucel Bayram
  • 1,653
  • 2
  • 22
  • 41