У меня проблема с преобразованием типа символа в тип String. Прежде всего, у меня есть расширение расширения String для нахождения n-го символа в String.
extension String {
func characterAtIndex(index: Int) -> Character? {
var cur = 0
for char in self {
if cur == index {
return char
}
cur++
}
return nil
}
}
Я получаю то, что хочу, с этим расширением класса. Однако, когда я использую этот n-й символ для заголовка своего пользовательского UIButton, выдается сообщение об ошибке. Мой класс Uibutton
class hareketliHarfler: UIButton {
init(frame: CGRect) {
super.init(frame: frame)
// Initialization code
}
func getLetter(letter:String!){
self.titleLabel.text = letter
}
}
Ошибка при попытке получить доступ к функции getLetter (letter: String). Вот пример основных кодов контроллера:
var harfim = hareketliHarfler(frame: CGRectMake(100,100,100,100))
var str="This is my String"
var bufi=str.characterAtIndex(3)
harfim.getLetter(bufi as AnyObject) ****
В * разделе я пытаюсь .getLetter(bufi),.getLetter(bufi as String) также пытаюсь изменить тип параметра функции. Посмотрите: func getLetter (буква: символ!) Или func getLetter (буква: AnyObject!)... и т.д. Не нашел пути. Нужна помощь по этому поводу. Спасибо вам