删除Swift 3中的最后一个字符

时间:2016-09-21 07:15:02

标签: ios swift3

我正在创建一个简单的计算器应用程序,当前点按我的按钮时,正在努力删除最后一个字符。我正在使用dropLast()方法,但我一直收到错误

  

呼叫中缺少参数#1的参数

@IBAction func onDelPressed (button: UIButton!)  {
     runningNumber = runningNumber.characters.dropLast()
     currentLbl.text = runningNumber
}

2 个答案:

答案 0 :(得分:20)

斯威夫特4(附录)

在Swift中,您可以直接在dropLast()实例上应用String,不再调用.characters来访问CharacterView的{​​{1}}:

String

Swift 3(原始答案)

我假设var runningNumber = "12345" runningNumber = String(runningNumber.dropLast()) print(runningNumber) // 1234 runningNumber个实例。在这种情况下,String不是runningNumber.characters.dropLast()类型,而是String

CharacterView

您需要使用let foo = runningNumber.characters.dropLast() print(type(of: foo)) // CharacterView 实例化CharacterView实例,然后再将其分配回String类型的属性,例如

String

即,对于您的情况

var runningNumber = "12345"
runningNumber = String(runningNumber.characters.dropLast())
print(runningNumber) // 1234

答案 1 :(得分:1)

快速删除字符串/文本中的最后一个字符

var str1 = "123456789"
str1.removeLast()
print(str1)

输出:

12345678