Быстрое изменение строки с диапазоном & и shouldChangeTextInRange, как узнать Backspace
Я новичок в Swift, и я много RND, но я не могу добиться успеха. У меня есть Заменить строку с диапазоном Я использую этот код, но его возвращаемая ошибка Я использую Swift 2.0
let aString: String = txt_description.text
let newString = aString.stringByReplacingOccurrencesOfString(varattherate, withString:"@\(getText) ", options: NSStringCompareOptions.LiteralSearch, range: NSMakeRange(0, 10))
Проблема в том, что я должен заменить текст из строки, моя строка - "меня зовут @test, но я хочу изменить @te" и заменить "@te" заменить на "@test", но у меня есть изменения в последнем "@te" из Строка, я пытаюсь создать "Автозаполнение просмотра текста"
Но я использую этот код
let aString: String = "my name is @test but i want change @te"
let newString = aString.stringByReplacingOccurrencesOfString(varattherate, withString:"@\(getText) ", options: NSStringCompareOptions.LiteralSearch, range:nil)
и вывод "меня зовут @testst, но я хочу изменить @test", но у меня есть необходимость вывода "меня зовут @test, но я хочу изменить @test" Не изменить первым @te только последний - изменение с динамическим
Вторая проблема заключается в том, как узнать в этой функции Backspace
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool
{
}
Я пытаюсь этот код, но не работает текст: String) -> Bool {
if(text == "\b") {
println("This is backspace ")
return false
}
}
1 ответ
Проверьте этот пример, чтобы понять ваш второй вопрос
// this is ASCII BS (backspace)
let cBS: Int8 = 0x08
let asciitxt: [Int8] = [65,66,67,cBS,68,0]
let asString = String.fromCString(asciitxt)
print(asciitxt)
print(asString)
print(asString!)
/*
[65, 66, 67, 8, 68, 0]
Optional("ABC\u{08}D")
ABCD
*/
ответ на ваш первый вопрос касается логики в вашем коде синтаксического анализа... он не очень специфичен