2016-11-22 4 views
0

Swift에서 NSMenuItem에 대한 작업을 구현하는 데 어려움이 있습니다. 일반적으로, 당신은 목표 - C에서이 같은 동작을 구현합니다Swift에서 응답자 액션 구현

- (void) asdf:(id)sender 

이 지금처럼 첫 번째로 반응에서 작업을 설정 한 후, 완벽하게 잘 작동 : 다시 작성 후,

user defined first responder

그러나 Swift에서 내보기 컨트롤러, 다음과 같은 새로운 방법을 호출하지 않는 것 :

func asdf(sender: AnyObject?) 

비록 두 O bj-C와 Swift 버전은 같은 View Controller 서브 클래스를위한 것입니다.

func asdf(_ sender: Any) 

이유 : 스위프트 3.0

답변

1

당신은로 정의거야? 당신이 함수를 호출 할 때 당신은 그래서 지금, 매개 변수 이름을 삭제할 수 있습니다 _ 사용하는 경우

당신은 그것을 좋아 호출 할 수 있습니다 : 대신

object.asdf(object) 

을 :

object.asdf(sender: object) 

또한, 스위프트 사용하면 좋겠 이 문맥에서는 AnyObject 대신 Any을 사용하십시오. 자세한 내용은 here 사이의 차이점을 참조하십시오.