2016-09-17 4 views
0

У меня есть следующая функция (которая использует этот удивительный library) для кнопки, которая захватывает данные (копирует данные) из ячейки, а затем пытается вызвать другую функцию, если пользователь нажимает imgtagAction. Первая кнопка func buttonViewLinkAction отлично работает. Я получаю AlertView, и мне представлена ​​другая кнопка imgtagAction. Однако, когда я нажимаю на эту кнопку, я получаю:Вызов функции внутри функции?

непризнанный селектор отправлен в пример.

//get buttonViewLinkAction and copy to pasteboard 
@IBAction func buttonViewLinkAction(sender: UIButton) { 
    print("buttonViewLinkAction tapped") 
    let face = self.faces[sender.tag] 
    if let imageNAME: String = String(face.name){ 
     print(imageNAME .uppercaseString) 
    } 
    if let imageURL = NSURL(string:face.image) { 
     print(imageURL) 
    } 

    UIPasteboard.generalPasteboard().string = face.directLink 

    let alertView = SCLAlertView() 
    alertView.addButton("Add [imag] tags", target:self, selector:Selector("imgtagAction:")) 
    alertView.showSuccess((face.name), subTitle: "Direct link copied to clipboard") 

    func imgtagAction(Sender: AnyObject) { 
     print("imgtagAction tapped") 
     UIPasteboard.generalPasteboard().string = "[img]" + face.directLink + "[/img]" 
    } 

} 

Так что, когда я перехожу функцию imgtagAction вне функции buttonViewLinkAction я не могу получить доступ к данным ячейки.

func imgtagAction(Sender: AnyObject) { 
    print("imgtagAction tapped") 
    let face = self.faces[sender.tag] 
    if let imageNAME: String = String(face.name){ 
     print(imageNAME .uppercaseString) 
    } 
    if let imageURL = NSURL(string:face.image) { 
     print(imageURL) 
    } 
    UIPasteboard.generalPasteboard().string = "[img]" + face.directLink + "[/img]" 
} 

Ошибки я получаю:

использование неразрешенного идентификатора 'отправителя.

Что я здесь делаю неправильно?

+1

Swift чувствителен к регистру. – rmaddy

+0

Извините, я не знаю, как это относится к проблеме, которую я испытываю? – user3591436

+2

'sender' vs' Sender'. – rmaddy

ответ

0

У вас есть Sender вместо sender. Вот как должна выглядеть ваша функция.

func imgtagAction(sender: AnyObject) 
{ 
    print("imgtagAction tapped") 
    let face = self.faces[sender.tag] 
    if let imageNAME: String = String(face.name) 
    { 
     print(imageNAME .uppercaseString) 
    } 
    if let imageURL = NSURL(string:face.image) 
    { 
     print(imageURL) 
    } 
    UIPasteboard.generalPasteboard().string = "[img]" + face.directLink + "[/img]" 
} 
Смежные вопросы